1

parent_lastWAS 6.0 で正常に動作していた JSF 1.1 アプリがあり、WAS 7.0 に移行する必要がありますが、設定したにもかかわらず、次の例外が発生しますdeployment.xml

Uncaught init() exception created by servlet Faces Servlet in application: 
java.lang.NullPointerException
    at javax.faces.webapp.FacesServlet.init(FacesServlet.java:144)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:325)**

これはどのように発生し、どうすれば解決できますか?

4

1 に答える 1

1

アプリケーション ファクトリが見つからない場合、JSF 1.1 でこの例外が発生します。これは、ConfigureListenerなんらかの理由で が実行されていない可能性がある原因の中でも特に考えられます。.tldこれは通常、JSF ライブラリ内のファイルに基づいて自動的に呼び出されます。次のエントリを webapp's に追加することで、いつでも webapp に強制的に実行させることができますweb.xml

<listener>
    <listener-class>com.sun.faces.config.ConfigureListener</listener-class>
</listener>

ただし、問題が完全に解決されることを保証するものではありません。個別に調査して修正する必要がある別の例外が発生する可能性があります。

WAS 7.0 には JSF 1.2 がバンドルされており、(適切に設計された) JSF 1.1 コードは JSF 1.2 と技術的に 100% 互換性があるため、Web アプリケーション内の JSF 1.1 ライブラリを取り除きfaces-config.xml、JSF 1.2 に変更することをお勧めします。互換性のあるもの。

于 2012-06-05T12:04:03.187 に答える