错误分析/page.xhtml:跟踪错误实体“nbsp”被引用,但未声明
我想在我的JSF页面中使用不间断的空格。 我知道,在纯HTML中,我可以使用
为此,这工作正常。 但是,当我把这些
在一个Facelets页面中,那么它的错误如下:
错误分析/page.xhtml:错误跟踪[line:42]实体“nbsp”被引用,但未声明。
这是如何造成的,我该如何解决?
Facelets是基于XML的视图技术。 XML只有五个预定义的实体 。
不在其中。 它只在纯HTML或旧式JSP中使用(注意:它不能在JSPX中工作,因为这也是基于XML的!)。
要解决这个问题,你需要自己在doctype中声明实体,
<!DOCTYPE html [ <!ENTITY nbsp " "> ]>
或者使用(hex)十进制表示法代替:
  or  
-
<![CDATA[ ]]>
应该可以正常工作。 但是,这在属性值内不起作用 。 -
或者,只要
&
是XML中的一个预定义的实体,你可以试试&nbsp;
– 为基于XML的JSP工作。 这也应该在属性内工作。
尝试使用&#160;
。 有关实体的更多信息,您可以参考以下URL HTML ISO-8859-1参考
对于我来说,以下doctype可以启用
:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
加
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
到文件的顶部