Web サービス メソッド内でマネージド Bean を呼び出そうとしています。を返すNullPointerException
ため、 a をスローします。FacesContext.getCurrentInstance()
null
これはどのように発生し、どうすれば解決できますか?
Web サービス メソッド内でマネージド Bean を呼び出そうとしています。を返すNullPointerException
ため、 a をスローします。FacesContext.getCurrentInstance()
null
これはどのように発生し、どうすれば解決できますか?
JSF は、によって実行されるコンポーネント ベースの MVC フレームワークFacesServlet
です。そのサーブレットは、FacesContext
. FacesServlet
まったく別のサーブレットによって制御される完全に独立したスタンドアロンの Web サービス フレームワークを使用している場合のように、HTTP 要求が などによって処理されない場合、FacesContext
は単に利用できません。その後FacesContext#getCurrentInstance()
、 が返されnull
ます。
Web サービス メソッド内で JSF マネージド Bean を呼び出そうとしても意味がありません。仕事に間違ったツールを使用するようなものです。実行する必要があるコードを新しい別のクラスにリファクタリングするだけで、最終的に JSF マネージド Bean と Web サービス クラスの両方にインポート/挿入するだけです。