JSFページで改行しないスペースを使用したいのですが。私は知っている、プレーンHTML でこれを使用でき、これは正常に動作します。しかし、それら をFaceletsページに配置すると、次のエラーが発生します。
エラー解析/page.xhtml:エラー追跡[行:42]エンティティ "nbsp"が参照されましたが、宣言されていません。
これはどのように引き起こされ、どうすれば解決できますか?
回答:
Faceletsは、XMLベースのビュー技術です。XMLには5つの定義済みエンティティしかありません。その中に はありません。プレーンHTMLまたはレガシーJSPで使用する場合にのみ機能します(注:JSPXではXMLベースなので、JSXでは機能しません)。
この問題を解決するには、いずれかの必要性は非常に含むXHTMLファイルのDOCTYPEに実体自分自身を宣言するために 実体を、
<!DOCTYPE html [
<!ENTITY nbsp " ">
]>
または、代わりに(hexa)decimal表記を使用します。
  or  
平均的なIDEでは、「すべてのファイルで検索して置換」を実行し、 byのすべての出現箇所を置換することは簡単 です。
を使用してみてください&#160;。エンティティの詳細については、次のURLを参照してくださいHTML HTML ISO-8859-1 Reference
私にとっては、次の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">
ファイルの先頭に
正確にそれを配置したidi ?