2016-07-21 1 views
-1

lorsque j'imprime la sortie d'un servlet html, ne fonctionne pas de code qui portent barre oblique, par exemple:Utiliser slash dans servlet java pour l'impression code html avec StringBuilder ou PrintWriter

StringBuilder htmlOut = new StringBuilder(); 
htmlOut.append("<body style='background-image: url('images/background.jpg');'>"); 

tout ce qui conduit barre oblique ne fonctionne pas en html. Quelle est la bonne façon de passer à l'avant html slash à travers le servlet avec StringBuilder ou PrintWriter ?, grâce

+0

Êtes-vous sûr que vous ne vouliez pas dire « backslash » comme c'est un caractère d'échappement en Java. (https://docs.oracle.com/javase/tutorial/java/data/characters.html) –

Répondre

1

Le problème est de ne pas faire avec le / lui-même, il est que vous avez 4 guillemets simples dans cette chaîne , ce qui signifie que images/background.jpg fait partie de l'attribut body, pas l'attribut style.

Il se peut que le navigateur puisse "deviner ce que vous vouliez dire" sans /; mais le / le rejette.

Essayez de changer les extérieurs à guillemets doubles (leur échapper seront nécessaires):

htmlOut.append("<body style=\"background-image: url('images/background.jpg');\">"); 
          ^^ Here, and the corresponging closing quote. 
+0

Cet exemple ne fonctionne pas: htmlOut.append (""); –

+0

dans mon travail JSP ceci: –

+0

@AngelPicallo à cause de l'espace après le '='? En raison de l'utilisation de '' '' '' '' '' Cela n'a rien à voir avec Java, vous générez simplement du code HTML invalide –