100 votes

Erreur d'analyse /page.xhtml : Erreur Traced[ligne : 42] L'entité "nbsp" a été référencée, mais non déclarée.

Je voudrais utiliser des espaces insécables dans ma page JSF. Je sais que, en HTML pur, je pourrais utiliser pour cela et cela fonctionne bien. Cependant, lorsque je mets ces dans une page Facelets, j'obtiens une erreur comme suit :

Erreur d'analyse /page.xhtml : Erreur Traced[ligne : 42] L'entité "nbsp" a été référencée, mais pas déclarée.

Comment est-ce causé et comment puis-je le résoudre ?

0 votes

Afficher un peu plus de code... où avez-vous placé ce exactement ?

197voto

BalusC Points 498232

Facelets est une technologie de vue basée sur XML. XML n'a que cinq entités prédéfinies. Le n'en fait pas partie. Il fonctionne uniquement lorsqu'il est utilisé dans du HTML brut ou dans du JSP obsolète (note : cela ne fonctionne pas dans JSPX car c'est également basé sur XML !).

Pour corriger cela, vous devez soit déclarer l'entité vous-même dans le doctype du fichier XHTML contenant l'entité ,

]>

ou, mieux, utilisez la notation (hexa)décimale à la place :

  or  

Dans un IDE moyen, il devrait être trivial d'effectuer une "recherche et remplacement dans tous les fichiers" et de remplacer chaque occurrence de par .

4 votes

Utilisez la notation hexadécimale ou décimale. :-)

0 votes

  résout le problème d'alignement à droite du point décimal flottant lorsqu'il est incorporé dans le motif #,##0.00 ;(#,##0.00) dans un fichier .JRXML d'un rapport Jasper Report/Library/Studio.

14voto

Oleg Khaschansky Points 159

Pour moi, le doctype suivant permet :

0 votes

Avec ceci, j'ai pu faire quelque chose comme

14voto

Sanjeevi.V Points 433

Essayez d'utiliser  . Pour plus d'informations sur les entités, vous pouvez consulter l'URL suivante Référence HTML ISO-8859-1

10voto

Ajoutez ci-dessous en haut du fichier

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

4 votes

Pourquoi cela a-t-il obtenu deux négatifs je me demande. C'est peut-être un peu trop concis mais c'est correct. L'entité n'a pas été définie dans le doctype et elle est définie lors de l'utilisation de la spécification fournie. Un an plus tard, quelqu'un poste exactement la même chose et obtient deux upvotes.

0 votes

Je suis d'accord avec @Dilapidus, cela a parfaitement fonctionné pour moi dans Chrome et JBoss EAP 7 avec la version 2.2 de Facelets

9voto

  1. devrait fonctionner correctement. Cela ne fonctionne cependant pas à l'intérieur de la valeur d'un attribut.

  2. Alternativement, tant que & est une entité prédéfinie en XML, vous pourriez essayer &nbsp; - cela a fonctionné pour moi avec des JSP basées sur XML. Cela devrait fonctionner également dans les attributs.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X