0

Web サービス メソッド内でマネージド Bean を呼び出そうとしています。を返すNullPointerExceptionため、 a をスローします。FacesContext.getCurrentInstance()null

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

4

1 に答える 1

1

JSF は、によって実行されるコンポーネント ベースの MVC フレームワークFacesServletです。そのサーブレットは、FacesContext. FacesServletまったく別のサーブレットによって制御される完全に独立したスタンドアロンの Web サービス フレームワークを使用している場合のように、HTTP 要求が などによって処理されない場合、FacesContextは単に利用できません。その後FacesContext#getCurrentInstance()、 が返されnullます。

Web サービス メソッド内で JSF マネージド Bean を呼び出そうとしても意味がありません。仕事に間違ったツールを使用するようなものです。実行する必要があるコードを新しい別のクラスにリファクタリングするだけで、最終的に JSF マネージド Bean と Web サービス クラスの両方にインポート/挿入するだけです。

于 2012-04-16T15:08:57.843 に答える