Error Parsing /page.xhtml: Error Traced[line: 42] The entity “nbsp” was referenced, but not declared

ぐ巨炮叔叔 提交于 2019-11-27 03:25:15

Facelets is a XML based view technology. XML has only five predefined entities. The   is not among them. It works only when used in plain HTML or in legacy JSP (note: it doesn't work in JSPX as that's also XML based!).

To fix this, you either need to declare the entity yourself in the doctype of the very XHTML file containing the   entity,

<!DOCTYPE html [
    <!ENTITY nbsp "&#160;"> 
]>

or, better, use the (hexa)decimal notation instead:

&#xA0; or &#160;

In an average IDE it should be trivial to perform a "find and replace in all files" and replace every occurrence of &nbsp; by &#xA0;.

Try using &amp;#160;. for more information on entities you can refer following url HTML ISO-8859-1 Reference

  1. <![CDATA[&nbsp;]]> should work fine. This does not work inside attribute value, though.

  2. Alternatively, as long as &amp; is a predefined entity in XML, you could try &amp;nbsp; - worked for me with XML based JSP. This should work within attributes as well.

For me the following doctype enables &nbsp;:

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

add

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

to the top of the file

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!