FaceletsのEL式の実行方法と操作方法を理解するのに少し問題があります。だから基本的に私は持っています:
<h:outputText id="Prompt"
value="Fobar"
rendered="#{beanA.prompt == true && beanB.currentBase !=null}" />
しかし、私は得続けます:
エラートレース[行:69]エンティティ名は、エンティティ参照の「&」の直後に続く必要があります。
回答:
Faceletsは、XMLベースのビューテクノロジーです。&
ある特殊文字のような実体の開始表すXML内&
で終了する;
文字を。あなたはそれを逃れる必要があるでしょう、それは醜いです:
rendered="#{beanA.prompt == true && beanB.currentBase != null}"
または、and
代わりにキーワードを使用します。これは、読みやすさと保守性の点で優先されます。
rendered="#{beanA.prompt == true and beanB.currentBase != null}"
無関係な表現はすでにブール結果を期待していたときに、具体的な問題に、ブール値とブール値を比較することはほとんど意味がありません。私は取り除くだろう== true
:
rendered="#{beanA.prompt and beanB.currentBase != null}"