2010-12-03 10 views
1

編集:決して気にしないでください!レンダリングされていないJSFコンポーネントでEL式が評価されないようにするにはどうすればよいですか?

私は、Faceletsを使用してJSF 1.2からFaceletsを使用してJSF 2にプロジェクトを切り替えています。 JSF 2では、レンダリングされていないコンポーネントのEL式が評価されるようです。これは、JSF 1.2の場合と同じようには見えませんでした。それは私のプロジェクトのJSF 1.2のバージョンではなかったときmyBean.myPojoは、nullの場合はNullPointerExceptionが原因

<h:panelGroup rendered="#{not empty myBean.myPojo}"> 
    <h:outputText value="#{myBean.myPojo.pojoProperty}" /> 
</h:panelGroup> 

:だからあなたのような問題を取得します。代わりに、これらのケースでは(h:panelGroup rendered = "..."の代わりに)c:ifを使用していますが、それはそれ自体の問題があります。私は間違ってやっていることが他にもあるでしょうか?これにはいくつかの設定がありますか?ありがとう!

+1

特定のコード例では、NPEは発生しません。 *実際のコードを投稿してください。それとも本当にしたら、それはELのバグです。 ELは、つまり、nullsafeであることを意図しています。使用しているEL実装(servletcontainer)について言及する必要があります。 – BalusC

+0

あなたは正しいです。私はこれを引き起こした無関係の間違いを発見した。ありがとうございました! – Nick

答えて

1

これがすべて起こっている場合、これは基本的なEL実装のバグのようです。この問題が既に報告されている場合は新しいバージョンがあるかどうかを確認し、そうでない場合は報告してください。 :)

関連する問題