2008-10-28 8 views
8

Je suis vraiment perplexe sur celui-ci. Je veux sortir une liste et avoir le fichier de balise qui s'occupe des virgules, du singulier par rapport au pluriel, etc. mais quand j'affiche la liste, il ignore complètement les espaces de sorte que tout soit fini. J'ai essayé d'utiliser les entités HTML "thinsp", "ensp" et "emsp" (je ne peux pas utiliser "nbsp", elles doivent être cassées), mais elles sont toutes horriblement larges sur IE sauf thinsp qui est bien trop maigre sur tout le reste.Comment faire pour que les fichiers de balise JSP n'ignorent PAS tous les espaces?

Modifier: ne fonctionnera pas. La sortie de la balise n'a aucun espace. Bien que tout contenu dans la JSP ait un espacement normal. Évidemment je pourrais juste mettre tout dans la JSP mais c'est le code qui va sur plusieurs JSPs, donc les fichiers de balises auraient beaucoup de sens.

Répondre

2

Peut-être mettre le contenu jsp dans un tag html <pre>? Cela me semble être la bonne chose à faire car la liste est un contenu pré-formaté.

0

Donc, vous dites que votre tag n'imprime pas d'espace blanc? Y a-t-il des espaces à imprimer? Pouvez-vous poster le code, et un court exemple de la façon dont vous l'utilisez?

+0

Ma solution était de simplement mettre tout le texte 100% dans les fichiers de propriétés. Parfois je dois enchaîner des choses puisque le texte est quelque peu dynamique: "user1, user2 et user3 ont fait quelque chose" par exemple. –

0

J'ai utilisé &#32; entité à la place de l'espace mais généralement je pense que cela craint que TOUTES les espaces sont mangés et que l'on doit pirater avec des entités ou que vous avez un vaste espace dans le code HTML généré.

13

C'est en fait un bogue dans l'analyseur EL qui provoque la consommation d'espaces entre les expressions EL. Par exemple.

${bean.foo} ${bean.bar} ${bean.waa} 

obtiendraient imprimé (en supposant qu'ils retourne la même valeur de chaîne que son nom de la propriété est):

foobarwaa 

Je rappelle que cette question a été rapporté quelque part, mais je ne peux pas semble le trouver maintenant. Comme vous pouvez bien maintenant fixer à l'aide JSTL c:out tag:

<c:out value="${bean.foo} ${bean.bar} ${bean.waa}" /> 

qui s'imprimé correctement comme:

foo bar waa 
Questions connexes