Essayez d'utiliser JSPX et de lancer un problème étrange. Texte à l'intérieur de jsp: le texte n'est pas censé être supprimé par les espaces, selon la documentation JSP, mais quand j'ai un élément jsp: text avec des espaces blancs au début d'un fichier tagx, lorsqu'il est utilisé dans les vues jspx, le les espaces disparaissent.jsp: texte perdant des espaces à l'intérieur de tagx
J'ai fait pas mal de recherches mais je n'arrive pas à trouver ce qui cause cela. J'ai vérifié que les mêmes instances de texte jsp: incluses directement dans la vue jspx fonctionnent correctement, mais mises dans un fichier tagx séparé, elles sont perdues.
Ceci est sous Jetty 6.1.19 et 6.1.22 en utilisant les bibliothèques JSP 2.1.
EDIT: Voici un exemple de code. Notez que les espaces menant et suivant dans les balises <jsp:text>
sont supprimés. A en juger par la documentation JSP je peux voir, les espaces à l'intérieur de ceux-ci devraient être conservés.
WEB-INF/onglets/nameValuePair.tagx:
<jsp:root version="2.0" xmlns:jsp="http://java.sun.com/JSP/Page">
<jsp:directive.attribute name="name" type="java.lang.String" required="true"/>
<jsp:directive.attribute name="value" type="java.lang.String" required="true"/>
<jsp:text> ${name}=${value} </jsp:text>
</jsp:root>
test.jspx:
<jsp:root version="2.0" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:t="urn:jsptagdir:/WEB-INF/tags">
<jsp:directive.page contentType="text/html; charset=ISO-8859-1" />
<html>
<head>
<title>Test</title>
</head>
<body>
<t:nameValuePair name="name" value="Google" />
<t:nameValuePair name="age" value="11" />
<t:nameValuePair name="description" value="Popular Search Engine" />
<jsp:text> test=value </jsp:text>
</body>
</html>
</jsp:root>
sortie:
<html><head><title>Test</title></head><body>name=Googleage=11description=Popular Search Engine test=value </body></html>
Si vous remplacez les espaces avec des points ou quelque chose, sont-ils conservés? Etes-vous sûr qu'il n'y a pas quelque chose d'autre autour de l'étiquette qui supprime les espaces? Les espaces en dehors de la balise sont-ils également supprimés ou est-ce uniquement les espaces de votre jsp: texte qui disparaît? – Brimstedt
Notez que les balises de texte jsp: qui perdent leurs espaces sont directement sous la racine jsp: du fichier tagx, et rien ne les entoure dans le fichier jspx. Similaire jsp: les balises de texte qui se trouvent directement dans le fichier jspx conservent leurs espaces de début et de fin, mais pas celles du fichier tagx. –
Je ne suis pas très sûr de la nature du problème. Le "test = valeur" a des espaces dans la sortie. Les éléments t: nameValuePair n'ont pas d'espaces, ce qui est correct. La sortie semble correcte! Un commentaire que je pourrais faire est qu'il y a deux étiquettes de fermeture. – Joshua