0

この正確な問題に関してSOにたくさんの質問があることは知っていますが、問題の解決策が見つかりませんでした. 私は@ManagedPropertyJSF 2 でa を使用しようとしています。このページの例を使用しましたが、私のものは機能しません:

@ManagedProperty("#{userSession}")
private UserSession userSession;
public void setUserSession(UserSession userSession) {
    this.userSession = userSession;
}

親 Bean と注入された Bean の両方がセッション スコープです。両方の Bean に@ManagedBean属性があります。faces-config.xml 宣言、EJB、Spring の使用はありません。この例から気づいたことの 1 つは、両方の Bean クラスが を実装していることSerializableです。私はそうではありません。それが違いを生んでいるかどうかはわかりません。

このコードを使用するNullPointerExceptionと、 を操作しようとすると が発生しuserSessionます。ただし、 @BalusC のfindBean便利なメソッドを使用すると機能するため、セッションが存在することはわかっています。userSession = findBean("userSession")ただし、これに関する1つのことは、「何かをしている」同じメソッド内で呼び出した場合にのみ、私のコードが機能することです。userSessionBean のコンストラクターで初期化すると、別の NPE が得られます。何か案は?

4

0 に答える 0