インターフェース RequestContextController
public interface RequestContextController
CDI コンテナーは、RequestContextController の組み込みインスタンスを提供します。これは、アクティブ化および非アクティブ化の目的でスコープが依存します。例:@Inject private RequestContextController requestContextController; public void doRequest(String body) { // activate request context requestContextController.activate(); // do work in a request context. // deactivate the request context requestContextController.deactivate(); }
リクエストコンテキストが非アクティブ化されたら、もう一度アクティブ化して、新しいリクエストコンテキストを作成できます。アクティブ化されたリクエストコンテキストは現在のスレッドにバインドされ、リクエストスコープの Bean をターゲットとするインジェクションポイントは、同じリクエストスコープのオブジェクトで満たされます。- 導入:
- 2.0
- 作成者:
- John D. Ament
メソッドのサマリー
すべてのメソッド インスタンスメソッド 抽象メソッド 修飾子と型 メソッド 説明 boolean
activate()
現在のスレッドの RequestContext がアクティブになっていない場合は、アクティブにします。void
deactivate()
現在のリクエストコンテキストがこのコンテキストコントローラーによってアクティブ化された場合、それを非アクティブ化します。
メソッドの詳細
activate
boolean activate()
現在のスレッドの RequestContext がアクティブになっていない場合は、アクティブにします。- 戻り値:
- この呼び出しによってコンテキストがアクティブ化された場合は true、そうでない場合は false。
deactivate
void deactivate() throws ContextNotActiveException
このコンテキストコントローラーによってアクティブ化された場合、現在のリクエストコンテキストを非アクティブ化します。コンテキストがアクティブであるが、このコントローラーによってアクティブ化されていない場合、このコントローラーによって非アクティブ化されていない可能性があります。つまり、このメソッドは何も実行しません。コンテキストがアクティブでない場合、ContextNotActiveException がスローされます。- 例外:
ContextNotActiveException
- コンテキストがアクティブでない場合