アノテーション型 RequestScoped


  • @TargetSE({TYPESE,METHODSE,FIELDSE})
    @RetentionSE(RUNTIMESE)
    @DocumentedSE
    @NormalScope
    @InheritedSE
    public @interface RequestScoped

    Bean がリクエストスコープであることを指定します。

    RequestScoped は、仕様で必要とされる組み込みのリクエストコンテキストに関連付ける必要がありますが、サードパーティの拡張機能は、それを独自のコンテキストに関連付けることもできます。以下で説明する動作は、組み込みのリクエストコンテキストにのみ関連しています。

    リクエストスコープはアクティブです:

    • Web アプリケーションの任意のサーブレットの service() メソッドの間、任意のサーブレットフィルターの doFilter() メソッドの間、およびコンテナーが ServletRequestListener または AsyncListener を呼び出すとき
    • Java EE Web サービスの呼び出し
    • EJB の リモートメソッド呼び出し中、EJB の非同期メソッド呼び出し中、EJB タイムアウトメソッドの呼び出し中、および EJB メッセージ駆動型 Bean へのメッセージ配信中、および
    • Bean の @PostConstruct コールバック中。

    リクエストコンテキストは破棄されます。

    • サーブレットリクエストの最後に、service() メソッド、すべての doFilter() メソッド、およびすべての requestDestroyed() および onComplete() 通知が戻った後
    • Web サービスの呼び出しが完了した後
    • EJB リモートメソッド呼び出し、非同期メソッド呼び出し、タイムアウトまたはメッセージ配信が完了した後 (呼び出しが発生したときにまだ存在していなかった場合)、または
    • @PostConstruct コールバックが完了した後、@PostConstruct コールバックが発生したときにまだ存在していなかった場合。

    修飾子 @Initialized(RequestScoped.class) を持つイベントは、リクエストコンテキストが初期化されるときに発生し、修飾子 @Destroyed(RequestScoped.class) を持つイベントは、リクエストコンテキストが破棄されるときに発生します。イベントペイロードは次のとおりです。

    • サーブレットリクエストによりコンテキストが初期化または破棄された場合は ServletRequest、または
    • Web サービスの呼び出しによりコンテキストが初期化または破棄された場合は ServletRequest、または
    • その他の型のリクエストには任意の java.lang.Object
    作成者:
    Gavin King, Pete Muir, Antoine Sabot-Durand