パッケージ jakarta.faces.component

クラス UIComponent

java.lang.ObjectSE
jakarta.faces.component.UIComponent
実装されたすべてのインターフェース:
PartialStateHolderStateHolderTransientStateHolderComponentSystemEventListenerFacesListenerSystemEventListenerHolderEventListenerSE
既知の直属サブクラス
UIComponentBase

UIComponent は、Jakarta Server Faces のすべてのユーザーインターフェースコンポーネントの基本クラスで。特定のリクエストとレスポンスに関連付けられた UIComponent インスタンスのセットは、リクエストまたはレスポンスのコンテンツ全体を表す UIViewRoot のコンポーネントツリーに編成されます。

コンポーネント開発者の便宜上、UIComponentBaseUIComponent に指定されたデフォルトの動作を提供し、すべての具象 UIComponent「基本」実装の基本クラスです。コンポーネントの作成者は、この抽象クラスを直接実装するのではなく、UIComponentBase をサブクラス化して、メソッドシグネチャーに対する将来の変更の影響を減らすことをお勧めします。

ListenerFor アノテーションが Component のクラス定義にアタッチされている場合、そのクラスも ComponentSystemEventListener を実装する必要があります。

コンポーネントツリーの動的な変更は、ビューの復元中および復元後にいつでも発生する可能性がありますが、状態の保存中には発生せず、レンダリングと状態の保存に関して適切に機能する必要があります。

  • フィールドの詳細

    • BEANINFO_KEY

      public static final StringSE BEANINFO_KEY

      この定数の値は、コンポーネント属性マップのキーとして使用されます。その値は、複合コンポーネントを説明する java.beans.BeanInfo 実装です。この BeanInfo は、複合コンポーネント BeanInfo と呼ばれます

      導入:
      2.0
      関連事項:
    • FACETS_KEY

      public static final StringSE FACETS_KEY

      この定数の値は、この複合コンポーネントの宣言されたファセットのメタ情報を含む Map<PropertyDescriptor> 複合コンポーネント BeanDescriptor のキーとして使用されます。このマップには、ファセットが明示的に宣言されていなくても、キー COMPOSITE_FACET_NAME にエントリが含まれている必要があります。COMPOSITE_FACET_NAME を参照してください。

      導入:
      2.0
      関連事項:
    • VIEW_LOCATION_KEY

      public static final StringSE VIEW_LOCATION_KEY

      この定数の値は、このコンポーネントインスタンスが存在するビューの Location のコンポーネント属性 Map のキーとして使用されます。

      導入:
      2.0
      関連事項:
    • COMPOSITE_COMPONENT_TYPE_KEY

      public static final StringSE COMPOSITE_COMPONENT_TYPE_KEY

      この定数の値は、複合コンポーネントの作成者が宣言した場合、この複合コンポーネントの複合コンポーネントルート  UIComponent の component-type に評価される ValueExpression の複合コンポーネント BeanDescriptor のキーとして使用されます。

      導入:
      2.0
      関連事項:
    • COMPOSITE_FACET_NAME

      public static final StringSE COMPOSITE_FACET_NAME

      この定数の値は、複合コンポーネントファセットを説明する PropertyDescriptor の FACETS_KEY に従って、返される Map のキーとして使用されます。この定数の値は、getFacets() から返される Map のキーとしても使用されます。この場合は、複合コンポーネント VDL ファイルの  <composite:implementation> セクションにあるすべてのコンポーネントの親である UIPanel である実際のファセットを指します

      導入:
      2.0
      関連事項:
    • ATTRS_WITH_DECLARED_DEFAULT_VALUES

      public static final StringSE ATTRS_WITH_DECLARED_DEFAULT_VALUES

      この定数を使用すると、複合コンポーネントの作成者がデフォルト値を指定した宣言済みの複合コンポーネント属性の名前をすばやく見つけることができます。この定数が引数として渡されると、複合コンポーネント BeanDescriptor の  getValue() メソッドから返される Collection<String> として情報が公開されます。

      導入:
      2.1
      関連事項:
    • bindings

      使用すべきではありません。
  • コンストラクターの詳細

    • UIComponent

      public UIComponent()
  • メソッドの詳細

    • getAttributes

      public abstract MapSE<StringSE,ObjectSE> getAttributes()

      この UIComponent に関連付けられた属性(およびプロパティ、以下を参照)を表す可変の Map を返します。属性名(文字列でなければなりません)をキーとします。返される実装は、すべての標準およびオプションの Map メソッドをサポートする必要があり、さらに次の追加要件もサポートする必要があります。

      • Map 実装は java.io.Serializable インターフェースを実装する必要があります。
      • null キーまたは値を追加しようとすると、NullPointerException がスローされます。
      • 文字列ではないキーを追加しようとすると、ClassCastException がスローされます。
      • キーとして指定された属性名がこの UIComponent の実装クラスのプロパティと一致する場合、次のメソッドは特別な動作をします:
        • containsKey - false を返します。
        • get() - プロパティが読み取り可能な場合は、getter メソッドを呼び出して、戻り値を返します(対応するラッパークラスでプリミティブ値をラップします)。それ以外の場合は IllegalArgumentException をスローします。
        • put() - プロパティが書き込み可能な場合は、setter メソッドを呼び出して対応する値を設定します(対応するラッパークラスでプリミティブ値をアンラップします)。プロパティが書き込み可能でない場合、またはプリミティブ型のプロパティを null に設定しようとした場合は、IllegalArgumentException をスローします。
        • remove - IllegalArgumentException をスローします。
      戻り値:
      コンポーネント属性マップ。
    • getPassThroughAttributes

      public MapSE<StringSE,ObjectSE> getPassThroughAttributes()

      これは、getPassThroughAttributes(boolean) を単に呼び出し、引数として true を渡す便利なメソッドです。このメソッドは null を返してはなりません。

      戻り値:
      パススルー属性マップ。
      導入:
      2.2
    • getPassThroughAttributes

      public MapSE<StringSE,ObjectSE> getPassThroughAttributes(boolean create)

      このメソッドの仕様は getPassThroughAttributes() と同じですが、引数 create が false であり、このインスタンスにパススルー属性データ構造が存在しない場合に限り、null を返すことができます。返される Map 実装は、すべての標準およびオプションの Map メソッドをサポートし、さらに次の追加要件をサポートする必要があります。マップは getStateHelper() を使用して格納する必要があります。

      Map 実装は java.io.Serializable を実装する必要があります。

      null キーまたは値を追加しようとすると、NullPointerException がスローされます。

      String ではないキーを追加しようとすると、IllegalArgumentException がスローされます。

      このクラスから直接拡張するコンポーネントとの下位互換性のために、空のマップを返すデフォルトの実装が提供されています。

      パラメーター:
      create - true の場合、新しい Map インスタンスがまだ存在していなければ作成されます。false で、既存の Map インスタンスがない場合、インスタンスは作成されず、null が返されます。
      戻り値:
      Map インスタンス、または null
      導入:
      2.2
    • getValueExpression

      public ValueExpression getValueExpression(StringSE name)

      指定された属性またはプロパティ名があれば、その値の計算に使用される ValueExpression を返します。

      このメソッドは、Jakarta Faces 1.2 以降に準拠するコンポーネントに対してオーバーライドおよび実装する必要があります。

      パラメーター:
      name - ValueExpression を取得する属性またはプロパティの名前
      戻り値:
      値式、または null
      例外:
      NullPointerExceptionSE - name が null の場合
      導入:
      1.2
    • setValueExpression

      public void setValueExpression(StringSE name, ValueExpression binding)

      指定された属性またはプロパティ名がある場合は、その値の計算に使用される ValueExpression を設定します。

      実装は、引数 expressionExpression.isLiteralText() を呼び出す必要があります。isLiteralText() が true を返す場合、引数式で ValueExpression.getValue(jakarta.el.ELContext) を呼び出し、その結果を this.getAttributes() への呼び出しで value パラメーターとして渡します .put(name、value)ここで、name は引数 name です。ValueExpression.getValue(jakarta.el.ELContext) を呼び出した結果として例外がスローされた場合は、それを FacesException にラップして、再度スローします。isLiteralText() が false を返す場合、評価されていない expression 引数を、引数 name で指定されたキーの ValueExpression のコレクションに格納するだけです。

      このメソッドは、Jakarta Faces 1.2 以降に準拠するコンポーネントに対してオーバーライドおよび実装する必要があります。

      パラメーター:
      name - ValueExpression を設定する属性またはプロパティの名前
      binding - 設定する ValueExpression、または現在設定されている ValueExpression を削除する null 
      例外:
      IllegalArgumentExceptionSE - name が id または parent のいずれかである場合
      NullPointerExceptionSE - name が null の場合
      導入:
      1.2
    • markInitialState

      public void markInitialState()

      PartialStateHolder.markInitialState() の実装。このメソッドはランタイムによって呼び出され、インスタンスが状態の変化の追跡を開始する必要があることを示します。

      次で指定:
      インターフェース PartialStateHoldermarkInitialState 
      導入:
      2.0
    • initialStateMarked

      public boolean initialStateMarked()

      PartialStateHolder.initialStateMarked() の実装。このメソッドはランタイムによって呼び出され、PartialStateHolder.markInitialState() メソッドが呼び出されたかどうかをテストします。

      次で指定:
      インターフェース PartialStateHolderinitialStateMarked 
      戻り値:
      初期状態がマークされている場合は true、それ以外の場合は false
      導入:
      2.0
    • clearInitialState

      public void clearInitialState()

      PartialStateHolder.clearInitialState() の実装であるこのメソッドは、状態の変化の追跡を停止するようインスタンスに指示するためにランタイムによって呼び出されます。

      次で指定:
      インターフェース PartialStateHolderclearInitialState 
      導入:
      2.0
    • getStateHelper

      protected StateHelper getStateHelper()

      このコンポーネントが PartialStateHolder を実装するのに役立つ StateHelper インスタンスを返します。

      戻り値:
      状態ヘルパー。
      導入:
      2.0
    • getStateHelper

      protected StateHelper getStateHelper(boolean create)

      getStateHelper() と同様ですが、引数 creat が true の場合にのみ状態ヘルパーインスタンスを作成します。

      パラメーター:
      create - true の場合、新しい StateHelper インスタンスがまだ存在していなければ作成されます。false で、既存の StateHelper インスタンスがない場合、インスタンスは作成されず、null が返されます。
      戻り値:
      状態ヘルパー。
      導入:
      2.0
    • getTransientStateHelper

      public TransientStateHelper getTransientStateHelper()

      この UIComponent インスタンスの TransientStateHelper インスタンスを返します。デフォルトの実装では、true を引数として渡して getTransientStateHelper(boolean) を呼び出すだけです。

      戻り値:
      過渡状態ヘルパー。
      導入:
      2.1
    • getTransientStateHelper

      public TransientStateHelper getTransientStateHelper(boolean create)

      この UIComponent インスタンスの TransientStateHelper インスタンスを返します。

      パラメーター:
      create - true が必要に応じて内部データ構造を作成する場合。false の場合は、インスタンスを作成しないでください。この場合、このメソッドが null を返す可能性があります。
      戻り値:
      過渡状態ヘルパー。
      導入:
      2.1
    • restoreTransientState

      public void restoreTransientState(FacesContext context, ObjectSE state)

      一時的な状態の概念をサポートする必要があるコンポーネントの場合、このメソッドは、saveTransientState(jakarta.faces.context.FacesContext) への以前の呼び出しで保存された状態を復元します。

      次で指定:
      インターフェース TransientStateHolderrestoreTransientState 
      パラメーター:
      context - Faces コンテキスト
      state - 一時的な値を含むオブジェクト
      導入:
      2.1
    • saveTransientState

      public ObjectSE saveTransientState(FacesContext context)

      一時的な状態の概念をサポートする必要があるコンポーネントの場合、このメソッドは、本質的に一時的であることがわかっているすべての状態を保存します。

      次で指定:
      インターフェース TransientStateHoldersaveTransientState 
      パラメーター:
      context - Faces コンテキスト。
      戻り値:
      一時的な値を含むオブジェクト
      導入:
      2.1
    • isInView

      public boolean isInView()

      このコンポーネントがビュー階層内にある場合は true を返し、それ以外の場合は false を返します

      戻り値:
      ビュー階層内の場合は true、それ以外の場合は false
      導入:
      2.0
    • setInView

      public void setInView(boolean isInView)

      このコンポーネントが現在ビュー階層内にあるかどうかに関するステータスを更新します。このメソッドは、開発者が決して呼び出さないでください。UIComponent の内部実装は、親の子 List またはファセット Map にコンポーネントが追加または削除されると、それを呼び出します。

      パラメーター:
      isInView - このコンポーネントがビュー階層内にあるかどうかを示すフラグ
      導入:
      2.0
    • getClientId

      public StringSE getClientId()

      Jakarta Expression Language がコンポーネントの clientId にアクセスできるようにします。これは、component および cc 暗黙オブジェクトと組み合わせると特に便利です。単に FacesContext.getCurrentInstance() を呼び出してから getClientId(FacesContext) を呼び出すデフォルトの実装が提供されています。

      戻り値:
      クライアント ID。
      導入:
      2.0
    • getClientId

      public abstract StringSE getClientId(FacesContext context)

      このコンポーネントのクライアント側識別子を返します。必要に応じて生成します。関連付けられている Renderer がある場合は、clientId をクライアントへの送信に適した形式に変換するように要求されます。

      このメソッドからの戻り値は、コンポーネントの id プロパティが変更された場合、またはコンポーネントがクライアント ID が変更される NamingContainer (たとえば、UIData ) に配置されない限り、インスタンスの存続期間中は同じ値である必要があります。ただし、これらの場合でも、このメソッドへの連続した呼び出しは常に同じ値を返す必要があります。実装では、clientId を決定する際に次の手順に従う必要があります。

      ビュー階層内で、NamingContainer を実装するこのコンポーネントに最も近い祖先を検索します。そのコンポーネントで getContainerClientId() を呼び出し、結果を parentId ローカル変数として保存します。このコンポーネントで getId() を呼び出し、結果を myId ローカル変数として保存します。myId が null の場合は、context.getViewRoot().createUniqueId() を呼び出して結果を myId に割り当てます。parentId が null 以外の場合は、myId を parentId + UINamingContainer.getSeparatorChar(jakarta.faces.context.FacesContext)+ myId と等しくします。Renderer.convertClientId(jakarta.faces.context.FacesContext, java.lang.String) を呼び出し、myId を渡して結果を返します。

      パラメーター:
      context - 現在のリクエストの FacesContext
      戻り値:
      クライアント ID。
      例外:
      NullPointerExceptionSE - context が null の場合
    • getContainerClientId

      public StringSE getContainerClientId(FacesContext context)

      NamingContainer を実装するコンポーネントが、先頭への追加ロジックを別々に呼び出し可能なメソッドに分割することで、子孫の clientIds への clientId の先頭への追加を選択的に無効にできるようにします。使用方法については、getClientId() を参照してください。

      デフォルトでは、このメソッドは getClientId() を呼び出し、結果を返します。

      パラメーター:
      context - Faces コンテキスト。
      戻り値:
      コンテナーのクライアント ID。
      例外:
      NullPointerExceptionSE - context が null の場合
      導入:
      1.2
    • getFamily

      public abstract StringSE getFamily()

      このコンポーネントが属するコンポーネントファミリの識別子を返します。この識別子は、rendererType プロパティの値と組み合わせて、このコンポーネントインスタンスに適切な Renderer を選択するために使用できます。このメソッドは null を返すべきではないことに注意してください

      戻り値:
      コンポーネントファミリ(null 以外)。
    • getId

      public abstract StringSE getId()

      この UIComponent のコンポーネント識別子を返します。

      戻り値:
      コンポーネント識別子。
    • setId

      public abstract void setId(StringSE id)

      この UIComponent のコンポーネント ID(存在する場合)を設定します。コンポーネント識別子は、次の構文制限に従う必要があります。

      • 長さがゼロの文字列であってはなりません。
      • 最初の文字は文字またはアンダースコア('_' )でなければなりません。
      • 後続の文字は、文字、数字、アンダースコア('_' )、ダッシュ('-')でなければなりません。

      コンポーネント識別子は、次のセマンティック制限にも従う必要があります(この制限は setId() 実装によって強制されないことに注意してください)。

      • 指定された識別子は、NamingContainer である最も近い祖先 UIComponent の子孫であるすべてのコンポーネント(ファセットを含む)間で一意であるか、NamingContainer であるそのような祖先がない場合はコンポーネントツリー全体のスコープ内で一意である必要があります。
      パラメーター:
      id - 新しいコンポーネント識別子、またはこの UIComponent にコンポーネント識別子がないことを示す null 
      例外:
      IllegalArgumentExceptionSE - id が構文的に有効でない場合
    • getParent

      public abstract UIComponent getParent()

      この UIComponent の親 UIComponent があれば、それを返します。子コンポーネントが getParent( ) から null を返す場合でも、コンポーネントは、子コンポーネントをこのコンポーネントの子のリストに追加および削除できるようにする必要があります。

      戻り値:
      親コンポーネント。
    • setParent

      public abstract void setParent(UIComponent parent)

      この UIComponent の親 UIComponent を設定します。parent.isInView() が true を返す場合、このメソッドを呼び出すと、まずこのノードに対して PreRemoveFromViewEvent が発行され、次にこのノードの子が発行されます。次に、再親化が行われると、PostAddToViewEvent もパブリッシュされます。最初にこのノードに対して、次にノードの子に対して行われますが、次の条件のいずれかが true の場合のみです

      このメソッドは、開発者が決して呼び出さないでください。UIComponent の内部実装は、親の子 List またはファセット Map にコンポーネントが追加または削除されると、それを呼び出します。

      パラメーター:
      parent - 新しい親、またはコンポーネントツリーのルートノードの null 
    • isRendered

      public abstract boolean isRendered()

      このコンポーネント(およびその子)をリクエスト処理ライフサイクルのレスポンスレンダリングフェーズでレンダリングする必要がある場合は、true を返します。

      戻り値:
      コンポーネントをレンダリングする必要がある場合は true、それ以外の場合は false
    • setRendered

      public abstract void setRendered(boolean rendered)

      この UIComponent の rendered プロパティを設定します。

      パラメーター:
      rendered - true がこのコンポーネントをレンダリングする場合。それ以外の場合は、このコンポーネントをレンダリングしないでください
    • getRendererType

      public abstract StringSE getRendererType()

      この UIComponentRenderer 型を返します(存在する場合)。

      戻り値:
      レンダラーの型。
    • setRendererType

      public abstract void setRendererType(StringSE rendererType)

      この UIComponentRenderer 型、またはそれ自体をレンダリングするコンポーネントの null を設定します。

      パラメーター:
      rendererType - 使用する Renderer の型の論理識別子、またはそれ自体をレンダリングするコンポーネントの null 
    • getRendersChildren

      public abstract boolean getRendersChildren()

      このコンポーネントが子コンポーネントのレンダリングを担当するかどうかを示すフラグを返します。UIComponentBase.getRendersChildren() のデフォルト実装は、このコンポーネントのレンダラーを見つけようとします。存在する場合は、Renderer.getRendersChildren() を呼び出して結果を返します。そうでない場合は、false を返します。Jakarta Faces Specification のバージョン 1.2 以降、コンポーネントの作成者は、このメソッドから true を返し、UIComponentBase.encodeChildren(jakarta.faces.context.FacesContext) に依存することをお勧めします。

      戻り値:
      コンポーネントが子をレンダリングする場合は true、それ以外の場合は false
    • getResourceBundleMap

      public MapSE<StringSE,StringSE> getResourceBundleMap()

      このコンポーネントの ResourceBundle の Map<String,String> を返します。コンポーネントには、関連付けられた ResourceBundle がある場合があります。このバンドルには、このコンポーネントのインスタンスに関連するローカライズされたプロパティが含まれている場合があります。デフォルトの実装では、まず、現在の UIComponent this の完全修飾クラス名に等しいベース名を持つ ResourceBundle と、現在の UIViewRoot の Locale に等しい Locale を検索します。そのようなバンドルが見つからず、コンポーネントが複合コンポーネントである場合は、この複合コンポーネントの ResourceresourceNameresourceName とし、ファイル拡張子を ".properties" に置き換えます。この複合コンポーネントの ResourcelibraryNamelibraryName とします。派生した resourceNamelibraryName を渡して、ResourceHandler.createResource(java.lang.String,java.lang.String) を呼び出します。createResource に実装されているローカライゼーション機能により、これにより ResourceBundle のローカライゼーションが自動的に可能になります。この機能は、Jakarta Faces Specification Document のセクション 2.6.1.3「リソース識別子」で指定されています。結果として得られる Resource が存在し、それが見つかる場合は、リソースの InputStream を使用して ResourceBundle が作成されます。このコンポーネントの ResourceBundle を取得するための前の 2 つの手順のいずれかが成功した場合、ResourceBundle は Map<String,String> にラップされて返されます。それ以外の場合は、Collections.EMPTY_MAP が返されます。

      戻り値:
      リソースバンドルマップ。
      導入:
      2.0
    • getChildren

      public abstract ListSE<UIComponent> getChildren()

      このコンポーネントに関連付けられた子 UIComponent を表す変更可能な List を返します。返される実装は、すべての標準およびオプションの List メソッドをサポートする必要があり、さらに次の追加要件もサポートする必要があります。

      • List 実装は java.io.Serializable インターフェースを実装する必要があります。
      • null を追加しようとすると、NullPointerException をスローする必要があります
      • UIComponent を実装していないオブジェクトを追加しようとすると、ClassCastException がスローされます。
      • 新しい子コンポーネントを追加するときは常に、子の parent プロパティをこのコンポーネントインスタンスに設定する必要があります。子の parent プロパティがすでに null でない場合、子は最初に前の親から削除する必要があります(子またはファセットのいずれかである可能性があります)。
      • 既存の子コンポーネントが削除される場合は常に、子の parent プロパティを null に設定する必要があります。
      • 子コンポーネントがビューに追加された後、Application.publishEvent(jakarta.faces.context.FacesContext, java.lang.Class<? extends jakarta.faces.event.SystemEvent>, java.lang.Object) を呼び出して、PostAddToViewEvent.class を最初の引数として渡し、新しく追加されたコンポーネントを 2 番目の引数として渡します。

      戻り値:
      子供のリスト。
    • getChildCount

      public abstract int getChildCount()

      この UIComponent に関連付けられている子 UIComponent の数を返します。子がない場合、このメソッドは 0 を返す必要があります。このメソッドが子コンポーネントリストの作成を引き起こしてはなりません。

      戻り値:
      子コンポーネントの数。
    • findComponent

      public abstract UIComponent findComponent(StringSE expr)

      以下に説明するアルゴリズムに従って、指定された検索式(存在する場合)に一致する id で UIComponent検索して返します。

      WARNING: 見つかった UIComponent インスタンスがあれば、そのツリー走査コンテキストに関係なく返されます。コンポーネントから Jakarta Expression 言語にバインドされた属性を取得することは安全ではありません。Jakarta Expression Language 式には、#{component} などの暗黙的なオブジェクトを含めることができます。これらのオブジェクトは、ツリートラバースコンテキストのスコープ内で評価されることを前提としています。ツリートラバーサルコンテキストの外でこれらの種類の暗黙的なオブジェクトを使用して式を評価すると、未定義の結果が生成されます。見つかった UIComponent インスタンスを操作するときにツリートラバーサルコンテキストを正しく説明するメソッドについて は、invokeOnComponent(jakarta.faces.context.FacesContext, java.lang.String, jakarta.faces.component.ContextCallback) を参照してください。invokeOnComponent(jakarta.faces.context.FacesContext, java.lang.String, jakarta.faces.component.ContextCallback) は、単純な clientId が与えられたコンポーネントを見つけるのにも役立ちます。

      コンポーネント識別子は、このコンポーネント(このコンポーネント自体の可能性があります)を囲む最も近い祖先 NamingContainer のスコープ内で一意である必要があります。このコンポーネントの祖先に NamingContainer コンポーネントがない場合、ツリーのルートコンポーネントは、そのクラスが実際に NamingContainer インターフェースを実装しているかどうかに関係なく、NamingContainer であるかのように扱われます。

      検索式は、識別子(UIComponent の id プロパティと完全に一致するか、UINamingContainer.getSeparatorChar(jakarta.faces.context.FacesContext) 文字値によってリンクされた一連のそのような識別子のいずれかで構成されます。検索アルゴリズムは次のように動作するはずですが、代替のアルゴリズムを長く使用することもできます。最終結果は同じなので:

      • 次のいずれかの条件が満たされるとすぐに停止して、検索のベースとなる UIComponent を特定します。
        • 検索式が区切り文字で始まる場合(「絶対」検索式と呼ばれます)、ベースはコンポーネントツリーのルート UIComponent になります。先頭の区切り文字は削除され、検索式の残りの部分は、以下で説明する「相対」検索式として扱われます。
        • それ以外の場合、この UIComponentNamingContainer である場合は、それがベースとして機能します。
        • それ以外の場合は、このコンポーネントの親を検索します。NamingContainer が検出された場合は、それがベースになります。
        • それ以外の場合(NamingContainer が検出されない場合)、ルート UIComponent がベースになります。
      • 検索式(前のステップで変更された可能性があります)は、「相対」検索式になり、ベースコンポーネントのスコープ内で一致する id を持つコンポーネント(存在する場合)を検索するために使用されます。照合は次のように実行されます。
        • 検索式が単純な識別子の場合、この値は id プロパティと比較され、次にベース UIComponent のファセットと子を再帰的に調べます(子孫 NamingContainer が見つかった場合、そのファセットと子は検索されません)。
        • 検索式に区切り文字で区切られた複数の識別子が含まれている場合、最初の識別子を使用して、前の箇条書きの規則に従って NamingContainer を見つけます。次に、この NamingContainer の findComponent() メソッドが呼び出され、検索式の残りの部分が渡されます。
      パラメーター:
      expr - 返される UIComponent を識別する検索式
      戻り値:
      見つかった UIComponent、またはコンポーネントが見つからなかった場合は null 
      例外:
      IllegalArgumentExceptionSE - 検索式の中間識別子が NamingContainer ではない UIComponent を識別する場合
      NullPointerExceptionSE - expr が null の場合
    • invokeOnComponent

      public boolean invokeOnComponent(FacesContext context, StringSE clientId, ContextCallback callback) throws FacesException

      ビュー階層のこのコンポーネントから開始して、引数 clientId と等しい clientId を持つコンポーネントを検索し、見つかった場合は、引数 callbackContextCallback.invokeContextCallback(jakarta.faces.context.FacesContext, jakarta.faces.component.UIComponent) メソッドを呼び出し、現在の FacesContext と見つかったコンポーネントを引数として渡します。このメソッドは findComponent(java.lang.String) に似ていますが、ビューのルートから検索するための主要な UINamingContainer.getSeparatorChar(jakarta.faces.context.FacesContext) 構文をサポートしていません。

      デフォルトの実装では、最初に this.getClientId() が引数 clientId と等しいかどうかをチェックします。その場合は、最初に pushComponentToEL(jakarta.faces.context.FacesContext, jakarta.faces.component.UIComponent) を呼び出し、に引数コールバックで ContextCallback.invokeContextCallback(jakarta.faces.context.FacesContext, jakarta.faces.component.UIComponent) メソッドを呼び出して、FacesContext 引数を渡し、これをコンポーネント引数として渡します。次に popComponentFromEL(jakarta.faces.context.FacesContext) を呼び出します。コールバックによって Exception がスローされた場合は、FacesException でラップして、再度スローします。それ以外の場合は、true を返します。

      それ以外の場合は、getFacetsAndChildren() によって返される各コンポーネントについて、このメソッドに引数を順番に渡して invokeOnComponent() を呼び出します。invokeOnComponent() が初めて true を返したときは、残りの Iterator のトラバースを中止し、true を返します。

      ContextCallback.invokeContextCallback(jakarta.faces.context.FacesContext, jakarta.faces.component.UIComponent) を呼び出す場合、このメソッドの実装は、コールバックに渡されたコンポーネントの状態が、引数 clientId で見つかった状態に関するビュー階層内のコンポーネントの位置を正しく反映することを保証する必要があります。例: UIData などの反復コンポーネントは、正しい行に基づく適切な子コンポーネントを見つける前に、引数 clientId を正しく反映するように行インデックスを設定する必要があります。コールバックが戻るとき、通常または Exception をスローすることにより、このメソッドの実装は、ビューの状態をコールバックを呼び出す前の状態に復元する必要があります。

      getFacetsAndChildren() のどの要素も invokeOnComponent() から true を返さなかった場合は、false を返します。

      clientId でコンポーネントを検索する簡単な使用例。

       
          private UIComponent found = null;
      
          private void doFind(FacesContext context, String clientId) {
            context.getViewRoot().invokeOnComponent(context, clientId,
                new ContextCallback() {
                   public void invokeContextCallback(FacesContext context,
                                                 UIComponent component) {
                     found = component;
                   }
                });
          }
       
       
      パラメーター:
      context - 現在のリクエストの FacesContext
      clientId - 引数コールバックに渡されるコンポーネントのクライアント識別子。
      callback - Callback インターフェースの実装。
      戻り値:
      true 指定された clientId を持つコンポーネントが見つかった場合、そのコンポーネントを引数として渡してコールバックメソッドが正常に呼び出され、例外はスローされませんでした。指定された clientId のコンポーネントが見つからない場合、false を返します。
      例外:
      NullPointerExceptionSE - いずれかの引数が null の場合
      FacesException - 引数 Callback が例外をスローすると、FacesException にラップされて再スローされます。
      導入:
      1.2
    • getFacets

      public abstract MapSE<StringSE,UIComponent> getFacets()

      この UIComponent に関連付けられたファセット UIComponent を表す変更可能な Map を返します。ファセット名(文字列である必要があります)をキーとします。返される実装は、すべての標準およびオプションの Map メソッドをサポートする必要があり、さらに次の追加要件もサポートする必要があります。

      • Map 実装は java.io.Serializable インターフェースを実装する必要があります。
      • null キーまたは値を追加しようとすると、NullPointerException がスローされます。
      • 文字列ではないキーを追加しようとすると、ClassCastException がスローされます。
      • UIComponent 以外の値を追加しようとすると、ClassCastException がスローされます。
      • 新しいファセット UIComponent が追加されるたびに:
        • コンポーネントの parent プロパティをこのコンポーネントインスタンスに設定する必要があります。
        • コンポーネントの parent プロパティがすでに null 以外の場合、コンポーネントは最初に前の親(子またはファセットのいずれかであった可能性がある)から削除する必要があります。
      • 既存のファセット UIComponent が削除されるときはいつでも:
        • ファセットの parent プロパティは null に設定する必要があります。
      戻り値:
      ファセットのマップ。
    • getFacetCount

      public int getFacetCount()

      この UIComponent に関連付けられているファセット UIComponent の数を返します。ファセットがない場合、このメソッドは 0 を返す必要があります。このメソッドにより、ファセットコンポーネントマップが作成されないようにする必要があります。

      UIComponent を直接拡張するクラスとの下位互換性のために、単に getFacets() を呼び出し、次に返された Map で size() メソッドを呼び出すデフォルト実装が提供されています。このメソッドのより最適化されたバージョンが UIComponentBase.getFacetCount() で提供されています。

      戻り値:
      ファセットの数。
      導入:
      1.2
    • getFacet

      public abstract UIComponent getFacet(StringSE name)

      名前付きファセットが存在する場合はそれを返し、そうでない場合は null を返す簡易メソッド。リクエストされたファセットが存在しない場合は、ファセットマップを作成しないでください。

      パラメーター:
      name - 目的のファセットの名前
      戻り値:
      コンポーネント、または null
    • getFacetsAndChildren

      public abstract IteratorSE<UIComponent> getFacetsAndChildren()

      この UIComponent の子 UIComponent が後に続くファセットに Iterator を返します。ファセットは未定義の順序で返され、その後にすべての子が子リストに格納されている順序で返されます。このコンポーネントにファセットまたは子がない場合、空の Iterator が返されます。

      返される Iterator は、remove() 操作をサポートしてはなりません。

      戻り値:
      ファセットと子イテレータ。
    • broadcast

      public abstract void broadcast(FacesEvent event) throws AbortProcessingException

      指定した FacesEvent を、この型のイベントに関心を示したすべての登録済みイベントリスナーにブロードキャストします。リスナーは、追加された順に呼び出されます。

      event が BehaviorEvent のインスタンスであり、現在の component が event のソースである場合、BehaviorEvent.getBehavior() を呼び出してイベントの Behavior を取得します。Behavior インスタンスで Behavior.broadcast(jakarta.faces.event.BehaviorEvent) を呼び出します

      パラメーター:
      event - 放送される FacesEvent
      例外:
      AbortProcessingException - Jakarta Faces 実装に、現在のイベントでこれ以上の処理を実行しないことを通知します
      IllegalArgumentExceptionSE - この FacesEvent の実装クラスがこのコンポーネントでサポートされていない場合
      NullPointerExceptionSE - event が null の場合
    • decode

      public abstract void decode(FacesContext context)

      指定された FacesContext に含まれるリクエストからこの UIComponent の新しい状態をデコードし、必要に応じてこの状態を保存します。

      デコード中、queueEvent() を呼び出すことにより、(インタレストを登録したイベントリスナーによる)後の処理のためにイベントをキューに入れることができます。

      パラメーター:
      context - FacesContext(処理中のリクエスト)
      例外:
      NullPointerExceptionSE - context が null の場合
    • visitTree

      public boolean visitTree(VisitContext visitContext, VisitCallback callback)

      ツリー内のこのノードからツリー訪問を実行します。

      UIComponent.visitTree() の実装は VisitCallback を直接呼び出さず、代わりに VisitContext.invokeVisitCallback(jakarta.faces.component.UIComponent, jakarta.faces.component.visit.VisitCallback) を呼び出してコールバックを呼び出します。これにより、VisitContext 実装は、たとえばコンポーネントのサブセットに対して  VisitCallback を呼び出すだけで、最適化されたツリートラバーサルを提供できます。

      UIComponent.visitTree() 実装は、訪問を実行する前に UIComponent.pushComponentToEL() を呼び出し、訪問後に UIComponent.popComponentFromEL() を呼び出す必要があります。

      パラメーター:
      visitContext - この訪問の VisitContext 
      callback - 訪問したノードごとに visit メソッドが呼び出される VisitCallback インスタンス
      戻り値:
      コンポーネントの実装は、true を返し、ツリーの訪問が完了したことを示す場合があります(訪問する必要のあるすべてのコンポーネントが訪問されたなど)。これにより、ツリーへのアクセスが短絡され、アクセスされるコンポーネントがなくなります。
      導入:
      2.0
      関連事項:
    • isVisitable

      protected boolean isVisitable(VisitContext context)

      このコンポーネントにアクセスする必要がある場合は true を返し、それ以外の場合は false を返します。UIComponent.visitTree() によって呼び出され、このコンポーネントが VisitContext.getHints() によって返されたヒントを満たすかどうかを判断します。

      このメソッドが false を返す場合、アクセスされたツリーは短絡され、コンポーネントもその子孫も訪問されません。

      カスタム visitTree() 実装は、このメソッドを呼び出して、訪問関連の処理を実行する前にコンポーネントがアクセス可能かどうかを判断できます。

      パラメーター:
      context - 訪問コンテキスト。
      戻り値:
      訪問可能であれば true、そうでなければ false
      導入:
      2.0
    • encodeBegin

      public abstract void encodeBegin(FacesContext context) throws IOExceptionSE

      rendered プロパティが true場合、この UIComponent の現在の状態の開始を、指定された FacesContext に含まれるレスポンスにレンダリングします。pushComponentToEL(jakarta.faces.context.FacesContext,jakarta.faces.component.UIComponent) を呼び出します。Application.publishEvent(jakarta.faces.context.FacesContext, java.lang.Class<? extends jakarta.faces.event.SystemEvent>, java.lang.Object) を呼び出し、最初の引数として PreRenderComponentEvent.class を渡し、2 番目の引数としてレンダリングされるコンポーネントインスタンスを渡します。

      Renderer がこの UIComponent に関連付けられている場合、実際のエンコーディングは Renderer.encodeBegin(FacesContext, UIComponent) に委譲されます。

      rendered プロパティが false の場合、pushComponentToEL(jakarta.faces.context.FacesContext,jakarta.faces.component.UIComponent) を呼び出してすぐに戻ります。

      パラメーター:
      context - FacesContext は作成中のレスポンス
      例外:
      IOExceptionSE - レンダリング中に入出力エラーが発生した場合
      NullPointerExceptionSE - context が null の場合
    • encodeChildren

      public abstract void encodeChildren(FacesContext context) throws IOExceptionSE

      rendered プロパティが true の場合、この UIComponent の子 UIComponent をレンダリングします。このメソッドは、rendersChildren プロパティが true の場合にのみ呼び出されます。

      Renderer がこの UIComponent に関連付けられている場合、実際のエンコーディングは Renderer.encodeChildren(FacesContext, UIComponent) に委譲されます。この UIComponent に関連付けられている Renderer がない場合は、このコンポーネントの各子を反復処理し、encodeAll(jakarta.faces.context.FacesContext) を呼び出します

      パラメーター:
      context - FacesContext は作成中のレスポンス
      例外:
      IOExceptionSE - レンダリング中に入出力エラーが発生した場合
      NullPointerExceptionSE - context が null の場合
    • encodeEnd

      public abstract void encodeEnd(FacesContext context) throws IOExceptionSE

      rendered プロパティが true場合、この UIComponent の現在の状態の終了をレンダリングします。

      Renderer がこの UIComponent に関連付けられている場合、実際のエンコーディングは Renderer.encodeEnd(FacesContext, UIComponent) に委譲されます。

      popComponentFromEL(jakarta.faces.context.FacesContext) を呼び出します。rendered プロパティの値に関係なく戻る前。

      パラメーター:
      context - FacesContext は作成中のレスポンス
      例外:
      IOExceptionSE - レンダリング中に入出力エラーが発生した場合
      NullPointerExceptionSE - context が null の場合
    • encodeAll

      public void encodeAll(FacesContext context) throws IOExceptionSE

      このコンポーネントが isRendered() から true を返す場合は、次のアクションを実行します。

      getRendersChildren() フラグの値に関係なく、isRendered() から true を返すこのコンポーネントとそのすべての子をレンダリングします。

      パラメーター:
      context - Faces コンテキスト。
      例外:
      IOExceptionSE - レンダリング中に入出力エラーが発生した場合
      NullPointerExceptionSE - context が null の場合
      導入:
      1.2
    • pushComponentToEL

      public void pushComponentToEL(FacesContext context, UIComponent component)

      現在の UIComponent this を FacesContext 属性マップにプッシュし、後続の popComponentFromEL(jakarta.faces.context.FacesContext) 呼び出しのために以前の UIComponent を保存します。

      このメソッドと popComponentFromEL() は、Jakarta Expression Language Expression "#{component}" がライフサイクルで処理されている「現在の」コンポーネントに解決できるようにする契約の基礎を形成します。pushComponentToEL() および popComponentFromEL() を呼び出す必要がある場合の要件は、このクラスの javadoc で必要に応じて指定されます。

      pushComponentToEL() が戻った後、getCurrentComponent(jakarta.faces.context.FacesContext) を呼び出すと、popComponentFromEL() が呼び出されるまで this UIComponent インスタンスを返す必要があります。呼び出されると、前の UIComponent インスタンスが getCurrentComponent() から返されます。

      パラメーター:
      context - 現在のリクエストの FacesContext
      component - EL にプッシュする componentcomponent が null の場合、この呼び出しが呼び出された UIComponent インスタンスは EL にプッシュされます。
      例外:
      NullPointerExceptionSE - context が null の場合
      導入:
      2.0
      関連事項:
    • popComponentFromEL

      public void popComponentFromEL(FacesContext context)

      FacesContext 属性マップから現在の UIComponent をポップして、前の UIComponent があればそれが現在のコンポーネントになるようにします。

      パラメーター:
      context - 現在のリクエストの FacesContext
      例外:
      NullPointerExceptionSE - context が null の場合
      導入:
      2.0
      関連事項:
    • isCompositeComponent

      public static boolean isCompositeComponent(UIComponent component)

      component が複合コンポーネントの場合は true を返し、それ以外の場合は false を返します。

      パラメーター:
      component - テストする UIComponent
      戻り値:
      これが複合コンポーネントの場合は true、それ以外の場合は false
      例外:
      NullPointerExceptionSE - component が null の場合
      導入:
      2.0
    • getCompositeComponentParent

      public static UIComponent getCompositeComponentParent(UIComponent component)

      指定されたコンポーネントの最も近い複合コンポーネントの親を検索します。

      パラメーター:
      component - 検索を開始するコンポーネント
      戻り値:
      component が null の場合、null を返します。それ以外の場合は、コンポーネントの親階層を検索して、最も近い親複合コンポーネントを探します。親複合コンポーネントが見つからない場合は、null を返します
      導入:
      2.0
    • getCurrentComponent

      public static UIComponent getCurrentComponent(FacesContext context)

      現在処理中の UIComponent インスタンスを返します。これは、Jakarta Expression Language 式 "#{component}" を評価し、結果の ValueExpression に対して getValue 操作を実行することと同じです。

      現在処理中の UIComponent がない場合、このメソッドは null を返す必要があります

      パラメーター:
      context - FacesContext(処理中のリクエスト)
      戻り値:
      現在のコンポーネント、または null
      例外:
      NullPointerExceptionSE - context が null の場合
      導入:
      2.0
    • getCurrentCompositeComponent

      public static UIComponent getCurrentCompositeComponent(FacesContext context)

      複合コンポーネントである getCurrentComponent(jakarta.faces.context.FacesContext) から返されたコンポーネントに相対的な最も近い祖先コンポーネントを返します。そのようなコンポーネントが存在しない場合は null を返します。

      パラメーター:
      context - FacesContext(処理中のリクエスト)
      戻り値:
      現在の複合コンポーネント、または null
      例外:
      NullPointerExceptionSE - context が null の場合
      導入:
      2.0
    • addFacesListener

      protected abstract void addFacesListener(FacesListener listener)

      指定された FacesListener を、この UIComponent からイベント通知を受信するために登録されたリスナーのセットに追加します。イベントソースとして機能する UIComponent クラスには、必要な型のリスナーを登録するための対応する型安全 API があり、それらの登録メソッドの実装はこのメソッドに委譲されることが予想されます。例:

       public class FooEvent extends FacesEvent { ... }
      
       public interface FooListener extends FacesListener {
         public void processFoo(FooEvent event);
       }
      
       public class FooComponent extends UIComponentBase {
         ...
         public void addFooListener(FooListener listener) {
           addFacesListener(listener);
         }
         public void removeFooListener(FooListener listener) {
           removeFacesListener(listener);
         }
         ...
       }
       
      パラメーター:
      listener - 登録する FacesListener
      例外:
      NullPointerExceptionSE - listener が null の場合
    • getFacesListeners

      protected abstract FacesListener[] getFacesListeners(ClassSE clazz)

      指定されたクラスのインスタンスである登録された FacesListener の配列を返します。そのような登録されたリスナーがない場合、長さ 0 の配列が返されます。返された配列は、要素型 clazz に強く型付けされた配列に安全にキャストできます。

      パラメーター:
      clazz - 返されるために FacesListener によって実装される必要があるクラス
      戻り値:
      Faces リスナー、または長さがゼロの配列。
      例外:
      IllegalArgumentExceptionSE - class が FacesListener ではなく、実装していない場合
      NullPointerExceptionSE - clazz が null の場合
    • removeFacesListener

      protected abstract void removeFacesListener(FacesListener listener)

      この UIComponent からイベント通知を受信するために登録されたリスナーのセットから、指定された FacesListener を削除します。

      パラメーター:
      listener - 登録解除する FacesListener
      例外:
      NullPointerExceptionSE - listener が null の場合
    • queueEvent

      public abstract void queueEvent(FacesEvent event)

      現在のリクエスト処理ライフサイクルフェーズの最後に、ブロードキャストするイベントをキューに入れます。UIComponentBase のデフォルト実装では、この呼び出しを親 UIComponent の queueEvent() メソッドに委譲する必要があります。

      パラメーター:
      event - キューに入れられる FacesEvent
      例外:
      IllegalStateExceptionSE - このコンポーネントが UIViewRoot の子孫でない場合
      NullPointerExceptionSE - event が null の場合
    • subscribeToEvent

      public void subscribeToEvent(ClassSE<? extends SystemEvent> eventClass, ComponentSystemEventListener componentListener)

      この実装は UnsupportedOperationException をスローし、このクラスを継承する既存のアプリケーションを壊さないという唯一の目的のために提供されています。UIComponentBase は、このメソッドの実装を提供します。

      パラメーター:
      eventClass - イベントクラス。
      componentListener - リスナー。
      導入:
      2.1
    • unsubscribeFromEvent

      public void unsubscribeFromEvent(ClassSE<? extends SystemEvent> eventClass, ComponentSystemEventListener componentListener)

      この実装は UnsupportedOperationException をスローし、このクラスを継承する既存のアプリケーションを壊さないという唯一の目的のために提供されています。UIComponentBase は、このメソッドの実装を提供します。

      パラメーター:
      eventClass - イベントクラス。
      componentListener - コンポーネントリスナー。
      導入:
      2.1
    • getListenersForEventClass

      public ListSE<SystemEventListener> getListenersForEventClass(ClassSE<? extends SystemEvent> eventClass)

      この実装は UnsupportedOperationException をスローし、このクラスを継承する既存のアプリケーションを壊さないという唯一の目的のために提供されています。UIComponentBase は、このメソッドの実装を提供します。

      次で指定:
      インターフェース SystemEventListenerHoldergetListenersForEventClass 
      パラメーター:
      eventClass - イベントクラス。
      戻り値:
      リスナーのリスト。決して null ではありません。
      導入:
      2.1
    • getNamingContainer

      public UIComponent getNamingContainer()

      "this" 以降では、祖先の中で最も近いコンポーネント、つまり NamingContainer または null が見つからない場合はそれを返します。

      戻り値:
      命名コンテナー、または null
      導入:
      2.0
    • processRestoreState

      public abstract void processRestoreState(FacesContext context, ObjectSE state)

      次のように、このコンポーネントのすべてのファセット、このコンポーネントのすべての子、このコンポーネント自体に対して、リクエスト処理ライフサイクルのビュー復元フェーズで必要なコンポーネントツリー処理を実行します。

      状態保存メソッドがサーバーに設定されている場合、このメソッドは呼び出されない可能性があります。

      パラメーター:
      context - FacesContext(処理中のリクエスト)
      state - 状態。
      例外:
      NullPointerExceptionSE - context が null の場合
    • processDecodes

      public abstract void processDecodes(FacesContext context)

      次のように、このコンポーネントのすべてのファセット、このコンポーネントのすべての子、このコンポーネント自体に対して、リクエスト処理ライフサイクルのリクエスト値適用フェーズで必要なコンポーネントツリー処理を実行します。

      パラメーター:
      context - FacesContext(処理中のリクエスト)
      例外:
      NullPointerExceptionSE - context が null の場合
    • processEvent

      public void processEvent(ComponentSystemEvent event) throws AbortProcessingException

      デフォルトの実装では、次のアクションが実行されます。引数 event が PostRestoreStateEvent のインスタンスである場合、引用符なしでリテラル文字列 "binding" を引数として渡して this.getValueExpression(java.lang.String) を呼び出します。結果が非 null の場合、ValueExpression の値を this に設定します。

      次で指定:
      インターフェース ComponentSystemEventListenerprocessEvent 
      パラメーター:
      event - 処理中の ComponentSystemEvent インスタンス。
      例外:
      AbortProcessingException - このリクエストでライフサイクル処理を停止するかどうか。
    • processValidators

      public abstract void processValidators(FacesContext context)

      次のように、このコンポーネントのすべてのファセット、このコンポーネントのすべての子、このコンポーネント自体に対して、リクエスト処理ライフサイクルのプロセス検証フェーズで必要なコンポーネントツリー処理を実行します。

      パラメーター:
      context - FacesContext(処理中のリクエスト)
      例外:
      NullPointerExceptionSE - context が null の場合
      関連事項:
    • processUpdates

      public abstract void processUpdates(FacesContext context)

      次のように、このコンポーネントのすべてのファセット、このコンポーネントのすべての子、このコンポーネント自体に対して、リクエスト処理ライフサイクルのモデル値更新フェーズで必要なコンポーネントツリー処理を実行します。

      パラメーター:
      context - FacesContext(処理中のリクエスト)
      例外:
      NullPointerExceptionSE - context が null の場合
    • processSaveState

      public abstract ObjectSE processSaveState(FacesContext context)

      次のように、このコンポーネントのすべてのファセット、このコンポーネントのすべての子、このコンポーネント自体に対して、リクエスト処理ライフサイクルのレンダリングレスポンスフェーズの状態保存部分で必要なコンポーネントツリー処理を実行します。

      • このコンポーネントの transient プロパティを参照してください。true の場合、null を返します。
      • pushComponentToEL(jakarta.faces.context.FacesContext, jakarta.faces.component.UIComponent) を呼び出します。
      • この UIComponent のすべてのファセットと子の processSaveState() メソッドを、getFacetsAndChildren() への呼び出しによって決定された順序で呼び出し、一時的な子とファセットをスキップします。各子またはファセットの後に popComponentFromEL(jakarta.faces.context.FacesContext) が正しく呼び出されることを確認してください。
      • このコンポーネントの saveState() メソッドを呼び出します。
      • 子の状態とユーザーの状態を Serializable オブジェクトにカプセル化して返します。

      状態保存メソッドがサーバーに設定されている場合、このメソッドは呼び出されない可能性があります。

      パラメーター:
      context - FacesContext(処理中のリクエスト)
      戻り値:
      保存された状態。
      例外:
      NullPointerExceptionSE - context が null の場合
    • getFacesContext

      protected abstract FacesContext getFacesContext()

      現在のリクエストの FacesContext インスタンスを返す便利なメソッド。

      戻り値:
      Faces コンテキスト。
    • getRenderer

      protected abstract Renderer getRenderer(FacesContext context)

      このコンポーネントに関連付けられている Renderer インスタンスがあれば、それを返す簡易メソッド。それ以外の場合は、null を返します。

      パラメーター:
      context - 現在のリクエストの FacesContext
      戻り値:
      レンダラー、または null