パッケージ jakarta.faces.flow

アノテーションインターフェース FlowScoped


FlowScoped は CDI スコープであり、ランタイムはこのアノテーションを持つクラスを指定された Flow のスコープ内にあると見なします。実装は、セマンティクスを実装する jakarta.enterprise.inject.spi.Extension の実装を提供する必要があります。これにより、ユーザーは指定された Flow に入ると、このアノテーションが付けられた Bean が参照時に遅延して作成され、ユーザーが指定された Flow を終了したときにガベージコレクション利用できるようになります。フローの入口と出口の仕様については、FlowHandler.transition(jakarta.faces.context.FacesContext, jakarta.faces.flow.Flow, jakarta.faces.flow.Flow, jakarta.faces.flow.FlowCallNode, java.lang.String) を参照してください。

フローの実装を(装飾ではなく)カスタム FlowHandler 実装に置き換える場合、FlowScoped Bean に関する指定された動作を実装する CDI 拡張も置き換える必要があります。

CDI 仕様で定義されている修飾子 @Initialized@BeforeDestroyed@Destroyed を持つイベントは、この組み込みスコープに対して起動する必要があります。

導入:
2.2
  • 必須定数のサマリー

    必須要素
    修飾子と型
    必須要素
    説明
    このアプリケーションに対して定義されたフローの Flow.getId() と同等である必要があります。
  • オプション要素の概要

    オプション要素
    修飾子と型
    オプションの要素
    説明
    空でない場合は、value() によって参照される Flow が一意である定義ドキュメント ID を宣言します。
  • 要素の詳細

    • value

      StringSE value

      このアプリケーションに対して定義されたフローの Flow.getId() と同等である必要があります。

      戻り値:
      このフローの ID
      導入:
      2.2
    • definingDocumentId

      StringSE definingDocumentId

      空でない場合は、value() によって参照される Flow が一意である定義ドキュメント ID を宣言します。空の場合、ランタイムはすべてのフロー ID がアプリケーションのスコープ内で一意であると想定します。

      戻り値:
      このフローの定義ドキュメント ID
      導入:
      2.2
      デフォルト:
      ""