public abstract class Application extends ObjectSE
Application は Web アプリケーションごとのシングルトンオブジェクトを表し、Jakarta Server Faces(または拡張機能を提供したい実装)に基づくアプリケーションは、Jakarta Server Faces に必要な機能を提供するアプリケーション全体のシングルトンを登録できます。各オブジェクトのデフォルトの実装は、アプリケーションが動作をカスタマイズすることを選択しない場合のために提供されています。
Application のインスタンスは、ApplicationFactory の getApplication() メソッドを呼び出すことによって作成されます。このインスタンスは共有されているため、スレッドセーフな方法で実装する必要があります。
アプリケーションは、Faces 構成ファイルで指定されたいくつかの型のオブジェクトのファクトリとしても機能します。createComponent(java.lang.String)、createConverter(java.lang.String)、createValidator(java.lang.String) を参照してください。
| コンストラクターと説明 |
|---|
Application() |
| 修飾子と型 | メソッドと説明 |
|---|---|
void | addBehavior(StringSE behaviorId, StringSE behaviorClass) 対応する Behavior クラスの名前に動作 ID の新しいマッピングを登録します。 |
abstract void | addComponent(StringSE componentType, StringSE componentClass) コンポーネント型の新しいマッピングを、対応する UIComponent クラスの名前に登録します。 |
abstract void | addConverter(ClassSE<?> targetClass, StringSE converterClass) 指定されたターゲットクラスの変換を実行できる新しいコンバータークラスを登録します。 |
abstract void | addConverter(StringSE converterId, StringSE converterClass) コンバーター ID の対応する Converter クラスの名前への新しいマッピングを登録します。 |
void | addDefaultValidatorId(StringSE validatorId) ビュー内のすべての |
void | addELContextListener(ELContextListener listener)Faces アプリケーションが ELContext インスタンスの作成時に通知される ELContextListener を登録する方法を提供します。 |
void | addELResolver(ELResolver resolver)Jakarta Server Faces Specification のセクション JSF.5.5.1 で指定され引数 resolver はリゾルバーチェーンに付加させます。 |
void | addSearchKeywordResolver(SearchKeywordResolver resolver) 引数 |
abstract void | addValidator(StringSE validatorId, StringSE validatorClass) バリデーター ID の対応する Validator クラスの名前への新しいマッピングを登録します。 |
Behavior | createBehavior(StringSE behaviorId) |
UIComponent | createComponent(FacesContext context, Resource componentResource) インスタンス化とは、引数 |
UIComponent | createComponent(FacesContext context, StringSE componentType, StringSE rendererType) 返されるコンポーネントの |
abstract UIComponent | createComponent(StringSE componentType) |
abstract UIComponent | createComponent(ValueBinding componentBinding, FacesContext context, StringSE componentType) 使用すべきではありません。 |
UIComponent | createComponent(ValueExpression componentExpression, FacesContext context, StringSE componentType) |
UIComponent | createComponent(ValueExpression componentExpression, FacesContext context, StringSE componentType, StringSE rendererType) 返されるコンポーネントの |
abstract Converter | createConverter(ClassSE<?> targetClass) インスタンス化とは、指定された型のオブジェクトのための変換を行うことができるように自分自身を登録したクラスの新しい Converter インスタンスを返します。 |
abstract Converter | createConverter(StringSE converterId) |
abstract MethodBinding | createMethodBinding(StringSE ref, ClassSE<?>[] params) 使用すべきではありません。 |
abstract Validator | createValidator(StringSE validatorId) |
abstract ValueBinding | createValueBinding(StringSE ref) 使用すべきではありません。 これは、 getExpressionFactory() を呼び出してから ExpressionFactory.createValueExpression(javax.el.ELContext, java.lang.String, java.lang.Class<?>) を呼び出すことで置き換えられました。 |
<T> T | evaluateExpressionGet(FacesContext context, StringSE expression, ClassSE<? extends T> expectedType) 式を評価して値を取得します。 |
abstract ActionListener | getActionListener() |
IteratorSE<StringSE> | getBehaviorIds() この Application に現在登録されている一連の動作 ID に対して Iterator を返します。 |
abstract IteratorSE<StringSE> | getComponentTypes() この Application に対して現在定義されているコンポーネント型のセットに対して Iterator を返します。 |
abstract IteratorSE<StringSE> | getConverterIds() この Application の現在登録されているコンバーター ID のセットに対して Iterator を返します。 |
abstract IteratorSE<ClassSE<?>> | getConverterTypes() |
abstract LocaleSE | getDefaultLocale() このアプリケーションのデフォルトの Locale を返します。 |
abstract StringSE | getDefaultRenderKitId() このアプリケーションのレンダリングに使用する renderKitId を返します。 |
MapSE<StringSE, StringSE> | getDefaultValidatorInfo() 現在登録されているデフォルトのバリデーター ID のセットとこの |
ELContextListener[] | getELContextListeners()addELContextListener(javax.el.ELContextListener) が呼び出されていない場合、このメソッドは空の配列を返す必要があります。 |
ELResolver | getELResolver() すべての Jakarta Expression Language 解決に使用されるシングルトン ELResolver インスタンスを返します。 |
ExpressionFactory | getExpressionFactory() このアプリケーションの ExpressionFactory インスタンスを返します。 |
FlowHandler | getFlowHandler() このアプリケーションのスレッドセーフシングルトン |
abstract StringSE | getMessageBundle() このアプリケーションの Jakarta Server Faces メッセージに使用される ResourceBundle の完全修飾クラス名を返します。 |
abstract NavigationHandler | getNavigationHandler() この Web アプリケーションに対して呼び出されたアプリケーションアクションによって返される結果が渡される NavigationHandler インスタンスを返します。 |
ProjectStage | getProjectStage()現在実行中のアプリケーションインスタンスのプロジェクトステージを返します。 |
abstract PropertyResolver | getPropertyResolver() 使用すべきではありません。 これは getELResolver() に置き換えられました。 |
ResourceBundleSE | getResourceBundle(FacesContext ctx, StringSE name) 指定された名前のアプリケーション構成リソースで定義されている ResourceBundle を見つけます。 |
ResourceHandler | getResourceHandler() このアプリケーションのシングルトン、ステートレス、スレッドセーフ |
SearchExpressionHandler | getSearchExpressionHandler() このアプリケーションのスレッドセーフシングルトン |
SearchKeywordResolver | getSearchKeywordResolver() すべての検索キーワードの解決に使用されるシングルトン |
abstract StateManager | getStateManager() リクエスト処理ライフサイクルのビューの復元フェーズとレスポンスのレンダリングフェーズで使用される StateManager インスタンスを返します。 |
abstract IteratorSE<LocaleSE> | getSupportedLocales() このアプリケーションでサポートされている Locale を介して Iterator を返します。 |
abstract IteratorSE<StringSE> | getValidatorIds() この Application の現在登録されているバリデーター ID のセットに対して Iterator を返します。 |
abstract VariableResolver | getVariableResolver() 使用すべきではありません。 これは getELResolver() に置き換えられました。 |
abstract ViewHandler | getViewHandler() リクエスト処理ライフサイクルのビューの復元フェーズとレスポンスのレンダリングフェーズで使用される ViewHandler インスタンスを返します。 |
void | publishEvent(FacesContext context, ClassSE<? extends SystemEvent> systemEventClass, ClassSE<?> sourceBaseType, ObjectSE source) このメソッドは、 |
void | publishEvent(FacesContext context, ClassSE<? extends SystemEvent> systemEventClass, ObjectSE source)
|
void | removeELContextListener(ELContextListener listener)ELContextListener のリストから引数 listener を削除します。 |
abstract void | setActionListener(ActionListener listener) すべての ActionSource コンポーネントに登録されるデフォルトの ActionListener を設定します。 |
abstract void | setDefaultLocale(LocaleSE locale) このアプリケーションのデフォルト Locale を設定します。 |
abstract void | setDefaultRenderKitId(StringSE renderKitId) このアプリケーションのレンダリングに使用する renderKitId を設定します。 |
void | setFlowHandler(FlowHandler newHandler)
|
abstract void | setMessageBundle(StringSE bundle) このアプリケーションの Jakarta Server Faces メッセージに使用される ResourceBundle の完全修飾クラス名を設定します。 |
abstract void | setNavigationHandler(NavigationHandler handler) この Web アプリケーションに対して呼び出されたアプリケーションアクションによって返される結果が渡される NavigationHandler インスタンスを設定します。 |
abstract void | setPropertyResolver(PropertyResolver resolver) 使用すべきではありません。 Jakarta Expression Language の実行に影響を与えるための推奨される方法は、通常の式評価の過程で考慮されるアプリケーション構成リソースの適切な場所に <el-resolver> 要素を提供することです。このメソッドは、ユーザーが addELResolver(javax.el.ELResolver) を呼び出したかのように、引数 resolver が ELResolver の実装内にラップされ、Jakarta Expression Language 解決システムに公開されるようにします。 |
void | setResourceHandler(ResourceHandler resourceHandler) リソースのマークアップのレンダリング、およびリソースを提供するためのクライアントリクエストを満たすために使用される |
void | setSearchExpressionHandler(SearchExpressionHandler searchExpressionHandler) アプリケーションが使用する |
abstract void | setStateManager(StateManager manager) リクエスト処理ライフサイクルのビューの復元フェーズとレスポンスのレンダリングフェーズで使用される StateManager インスタンスを設定します。 |
abstract void | setSupportedLocales(CollectionSE<LocaleSE> locales) このアプリケーションでサポートされる Locale を表す Locale インスタンスを設定します。 |
abstract void | setVariableResolver(VariableResolver resolver) 使用すべきではありません。 Jakarta Expression Language の実行に影響を与えるための推奨される方法は、通常の式評価の過程で考慮されるアプリケーション構成リソースの適切な場所に <el-resolver> 要素を提供することです。このメソッドは、ユーザーが addELResolver(javax.el.ELResolver) を呼び出したかのように、引数 resolver が ELResolver の実装内にラップされ、Jakarta Expression Language 解決システムに公開されるようにします。 |
abstract void | setViewHandler(ViewHandler handler) リクエスト処理ライフサイクルのビューの復元フェーズとレスポンスのレンダリングフェーズで使用される ViewHandler インスタンスを設定します。 |
void | subscribeToEvent(ClassSE<? extends SystemEvent> systemEventClass, ClassSE<?> sourceClass, SystemEventListener listener) 引数 |
void | subscribeToEvent(ClassSE<? extends SystemEvent> systemEventClass, SystemEventListener listener) 引数 |
void | unsubscribeFromEvent(ClassSE<? extends SystemEvent> systemEventClass, ClassSE<?> sourceClass, SystemEventListener listener)
|
void | unsubscribeFromEvent(ClassSE<? extends SystemEvent> systemEventClass, SystemEventListener listener) 引数 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSEpublic abstract ActionListener getActionListener()
このアプリケーションのすべての ActionSource コンポーネントに登録されるデフォルトの ActionListener を返します。明示的に設定しない場合は、仕様書ドキュメントの「アプリケーション統合」という章の「ActionListener プロパティ」で指定されている機能を実行するデフォルトの実装を提供する必要があります。
デフォルトの ActionListener の仕様では、非推奨のプロパティ(action)とクラス(MethodBinding)の使用が必要になることに注意してください。残念ながら、デフォルトの ActionListener は、ActionSource2 を実装せず、ActionSource のみを実装するコンポーネントで引き続き動作する必要があるため、これが必要です。
public abstract void setActionListener(ActionListener listener)
すべての ActionSource コンポーネントに登録されるデフォルトの ActionListener を設定します。
listener - 新しいデフォルトの ActionListenerNullPointerExceptionSE - listener が null の場合 public abstract LocaleSE getDefaultLocale()
このアプリケーションのデフォルトの Locale を返します。明示的に設定されていない場合、null が返されます。
null。public abstract void setDefaultLocale(LocaleSE locale)
このアプリケーションのデフォルト Locale を設定します。
locale - 新しいデフォルトの LocaleNullPointerExceptionSE - locale が null の場合 public abstract StringSE getDefaultRenderKitId()
このアプリケーションのレンダリングに使用する renderKitId を返します。明示的に設定されていない場合、null が返されます。
null。public abstract void setDefaultRenderKitId(StringSE renderKitId)
このアプリケーションのレンダリングに使用する renderKitId を設定します。クライアントが同じアプリケーションで複数の RenderKit インスタンスの使用をサポートするカスタム ViewHandler を提供していない限り、このメソッドは、Faces リクエストが処理される前のアプリケーションの起動時にのみ呼び出す必要があります。これは現在の仕様の制限であり、将来のリリースで解除される可能性があります。
renderKitId - 設定するレンダリングキット ID。public abstract StringSE getMessageBundle()
このアプリケーションの Jakarta Server Faces メッセージに使用される ResourceBundle の完全修飾クラス名を返します。明示的に設定されていない場合、null が返されます。
null。public abstract void setMessageBundle(StringSE bundle)
このアプリケーションの Jakarta Server Faces メッセージに使用される ResourceBundle の完全修飾クラス名を設定します。リソースバンドル名の構文の詳細については、java.util.ResourceBundle クラスの JavaDocs を参照してください。
bundle - 使用するリソースバンドルのベース名 NullPointerExceptionSE - bundle が null の場合 public abstract NavigationHandler getNavigationHandler()
この Web アプリケーションに対して呼び出されたアプリケーションアクションによって返される結果が渡される NavigationHandler インスタンスを返します。明示的に設定しない場合は、NavigationHandler クラスの説明で説明されている機能を実行するデフォルトの実装を提供する必要があります。
NavigationHandler 実装は、<application> 要素内の <navigation-handler> 要素の値として完全修飾クラス名を指定することにより、アプリケーション構成リソースで宣言されます。ランタイムは、Jakarta Server Faces の他のすべてのプラグ可能なアーティファクトと同様に、デコレータパターンを使用する必要があります。
public abstract void setNavigationHandler(NavigationHandler handler)
この Web アプリケーションに対して呼び出されたアプリケーションアクションによって返される結果が渡される NavigationHandler インスタンスを設定します。
handler - 新しい NavigationHandler インスタンス NullPointerExceptionSE - handler が null の場合 public ResourceHandler getResourceHandler()
このアプリケーションのシングルトン、ステートレス、スレッドセーフの ResourceHandler を返します。Jakarta Server Faces 実装は、ResourceHandler の代替実装を宣言するための次の手法をサポートする必要があります。
ResourceHandler 実装は、<application> 要素内の <resource-handler> 要素の値として完全修飾クラス名を指定することにより、アプリケーション構成リソースで宣言されます。
上記のすべてのケースで、ランタイムは Jakarta Server Faces の他のすべてのプラガブルアーティファクトと同様に、デコレーターパターンを使用する必要があります。
Application を装飾するユーザーが機能を継続できるように、UnsupportedOperationException をスローするデフォルトの実装が提供されています
public void setResourceHandler(ResourceHandler resourceHandler)
リソースのマークアップのレンダリング、およびリソースを提供するためのクライアントリクエストを満たすために使用される ResourceHandler インスタンスを設定します。
resourceHandler - 新しい ResourceHandler インスタンス IllegalStateExceptionSE - このアプリケーションの Lifecycle インスタンスによって少なくとも 1 つのリクエストが処理された後にこのメソッドが呼び出された場合。NullPointerExceptionSE - resourceHandler が null の場合 public abstract PropertyResolver getPropertyResolver()
getELResolver() に置き換えられました。 アプリケーションでプログラムによって表示される式の解決のために Faces が Jakarta Expression Language に提供する ELResolver インスタンスをラップする PropertyResolver インスタンスを返します。
このクラスは、カスタム PropertyResolver が EL 解決プロセスに影響を与えることを可能にするのに役立つ何もしないようになったため、デフォルトの PropertyResolver を返さなくなったことに注意してください。
public abstract void setPropertyResolver(PropertyResolver resolver)
<el-resolver> 要素を提供することです。この方法により、引数 resolver が ELResolver の実装内にラップされ、ユーザーが addELResolver(javax.el.ELResolver) を呼び出した場合と同様に Jakarta Expression Language 解決システムに公開されるようになります。 メソッドと値のバインディングを解決するために使用される PropertyResolver インスタンスを設定します。
このメソッドは非推奨になりましたが、実装では、引数をレガシー PropertyResolver チェーンのヘッドとして設定し、アプリケーション構成リソースから設定された既存の値を置き換える必要があります。
アプリケーションがクライアントからリクエストを受け取った後でこのメソッドを呼び出すことは不正です。それ以降にリスナーを登録しようとした場合、何の影響もありません。
resolver - 新しい PropertyResolver インスタンス NullPointerExceptionSE - resolver が null の場合 IllegalStateExceptionSE - FacesServlet への最初のリクエストが処理された後に呼び出された場合。public ResourceBundleSE getResourceBundle(FacesContext ctx, StringSE name)
指定された名前のアプリケーション構成リソースで定義されている ResourceBundle を見つけます。名前に ResourceBundle が定義されている場合は、現在の UIViewRoot のロケールを使用するインスタンスを返します。
デフォルトの実装は UnsupportedOperationException をスローし、このクラスを継承する既存のアプリケーションを壊さないという唯一の目的のために提供されています。
ctx - Faces コンテキスト。name - リソースバンドルの名前。FacesException - バンドルが定義されているが解決できない場合 NullPointerExceptionSE - ctx == null の場合 | | 名前 == nullpublic ProjectStage getProjectStage()
現在実行中のアプリケーションインスタンスのプロジェクトステージを返します。デフォルト値は ProjectStage.Production です
このメソッドの実装は、返される値を決定するために、次のアルゴリズムまたは同等の最終結果を持つ同等のものを実行する必要があります。
値がこのメソッドへの以前の呼び出しによってすでに決定されている場合は、単にその値を返します。
ProjectStage.PROJECT_STAGE_JNDI_NAME(戻り値の型java.lang.String)の値で指定されたキーで、JNDI環境エントリを探します。見つかった場合は、以下のアルゴリズムを続行します。それ以外の場合は、ProjectStage.PROJECT_STAGE_PARAM_NAMEの値で指定されたキーを使用して、現在のFacesContextからExternalContextのinitParamMapのエントリを探します。値が見つかった場合は、
initParamMapから値を渡してProjectStage.valueOf()を呼び出し、列挙定数を取得できるかどうかを確認します。これが例外なく成功した場合は、値を保存して返します。見つからない場合、またはこれまでに列挙定数値を検出する試みが失敗した場合は、説明的なエラーメッセージをログに記録し、値を
ProjectStage.Productionとして割り当てて返します。
Application を装飾するユーザーが機能を継続できるように、UnsupportedOperationException をスローするデフォルトの実装が提供されています
public abstract VariableResolver getVariableResolver()
getELResolver() に置き換えられました。 アプリケーションにプログラムで表示される式の解決のために、Faces が Jakarta Expression Language に提供する ELResolver インスタンスをラップする VariableResolver を返します。VariableResolver の実装は、基礎となる ELResolver で呼び出されるすべてのメソッドの基本引数として null を渡す必要があります。
このメソッドはもはやデフォルトの VariableResolver を返さないことに注意してください。そのクラスは、カスタム VariableResolver が Jakarta Expression Language 解決プロセスに影響を与えることを可能にするのに役立つ何もしないためです。
public abstract void setVariableResolver(VariableResolver resolver)
<el-resolver> 要素を提供することです。この方法により、引数 resolver が ELResolver の実装内にラップされ、ユーザーが addELResolver(javax.el.ELResolver) を呼び出した場合と同様に Jakarta Expression Language 解決システムに公開されるようになります。 メソッドと値のバインディングを解決するために参照される VariableResolver インスタンスを設定します。
このメソッドは非推奨になりましたが、実装では、引数をレガシー VariableResolver チェーンのヘッドとして設定し、アプリケーション構成リソースから設定された既存の値を置き換える必要があります。
アプリケーションがクライアントからリクエストを受け取った後でこのメソッドを呼び出すことは不正です。それ以降にリスナーを登録しようとした場合、何の影響もありません。
resolver - 新しい VariableResolver インスタンス NullPointerExceptionSE - resolver が null の場合 IllegalStateExceptionSE - FacesServlet への最初のリクエストが処理された後に呼び出された場合。public void addELResolver(ELResolver resolver)
Jakarta Server Faces Specification のセクション JSF.5.5.1 で指定され引数 resolver はリゾルバーチェーンに付加させます。
このメソッドで登録された ELResolver は、いったん登録すると削除できません。
アプリケーションがクライアントからリクエストを受け取った後で ELResolver を登録することは不正です。それ以降にリスナーを登録しようとする場合は、IllegalStateException をスローする必要があります。この制限は、Jakarta Server Pages コンテナーが、チェーンに標準のもの以外に追加の ELResolver がない一般的な場合に最適化できるようにするために設けられています。すでにチェーンにある CompositeELResolver に、初期化の前または後に ELResolver を追加することができます。
デフォルトの実装は UnsupportedOperationException をスローし、Application を継承する既存のアプリケーションを壊さないという唯一の目的のために提供されています。
resolver - 追加する Jakarta Expression Language リゾルバー。IllegalStateExceptionSE - FacesServlet への最初のリクエストが処理された後に呼び出された場合。public ELResolver getELResolver()
すべての Jakarta Expression Language 解決に使用されるシングルトン ELResolver インスタンスを返します。これは実際には CompositeELResolver のインスタンスであり、次の ELResolver インスタンスを次の順序で含める必要があります。
アプリケーション構成リソースの <el-resolver> 要素を使用して宣言された ELResolver インスタンス。
スペックドキュメントの JSF.5 章のセクション VariableResolver ChainWrapper に従って、レガシー VariableResolver チェーンのヘッドをラップする implementation。
スペックドキュメントの JSF.5 章のセクション PropertyResolver ChainWrapper に従って、レガシー PropertyResolver チェーンのヘッドをラップする implementation。
addELResolver(javax.el.ELResolver) の呼び出しによって追加された ELResolver インスタンス。
デフォルトの実装は UnsupportedOperationException をスローし、Application を継承する既存のアプリケーションを壊さないという唯一の目的のために提供されています。
public FlowHandler getFlowHandler()
このアプリケーションのスレッドセーフなシングルトン FlowHandler を返します。仕様のバージョン 2.2 への準拠を宣言する実装の場合、アプリケーションにフローがない場合でも、このメソッドが null を返さないようにする必要があります。これは、アプリケーションの存続期間中に動的フローを作成できるようにするために必要です。
仕様のバージョン 2.2 への準拠を宣言するすべての実装は、このメソッドを実装する必要があります。Application を継承するが、このメソッドをオーバーライドしない環境との下位互換性を確保するために、null を返す実装が提供されています。Application の装飾可能な性質により、このメソッドを呼び出すコードは常に null の戻り値をチェックする必要があります。
public void setFlowHandler(FlowHandler newHandler)
NavigationHandler が使用する FlowHandler インスタンスを設定して、面フロー機能の要件を満たします。
newHandler - 設定するフローハンドラー。NullPointerExceptionSE - newHandler が null の場合 IllegalStateExceptionSE - このアプリケーションの Lifecycle インスタンスによって少なくとも 1 つのリクエストが処理された後にこのメソッドが呼び出された場合。public abstract ViewHandler getViewHandler()
リクエスト処理のライフサイクルのビューを復元し、レスポンスのレンダリング・フェーズで利用される ViewHandler インスタンスを返します。明示的に設定されていない場合は、JJakarta ServerFaces 仕様の ViewHandler の説明に記載されている機能を実行するデフォルトの実装を提供する必要があります。
public abstract void setViewHandler(ViewHandler handler)
リクエスト処理ライフサイクルのビューの復元フェーズとレスポンスのレンダリングフェーズで使用される ViewHandler インスタンスを設定します。
handler - 新しい ViewHandler インスタンス IllegalStateExceptionSE - このアプリケーションの Lifecycle インスタンスによって少なくとも 1 つのリクエストが処理された後にこのメソッドが呼び出された場合。NullPointerExceptionSE - handler が null の場合 public abstract StateManager getStateManager()
リクエスト処理のライフサイクルのビューを復元し、レスポンスのレンダリング・フェーズで利用される StateManager インスタンスを返します。明示的に設定されていない場合は、Jakarta Server Faces Specification の StateManager の説明で説明されている機能を実行するデフォルトの実装を提供する必要があります。
public abstract void setStateManager(StateManager manager)
リクエスト処理ライフサイクルのビューの復元フェーズとレスポンスのレンダリングフェーズで使用される StateManager インスタンスを設定します。
manager - 新しい StateManager インスタンス IllegalStateExceptionSE - このアプリケーションの Lifecycle インスタンスによって少なくとも 1 つのリクエストが処理された後にこのメソッドが呼び出された場合。NullPointerExceptionSE - manager が null の場合 public void addBehavior(StringSE behaviorId, StringSE behaviorClass)
対応する Behavior クラスの名前への動作 ID の新しいマッピングを登録します。これにより、createBehavior() への後続の呼び出しが Behavior インスタンスのファクトリとして機能できるようになります。
behaviorId - 登録する動作 IDbehaviorClass - 対応する Behavior 実装の完全修飾クラス名 NullPointerExceptionSE - behaviorId または behaviorClass が null の場合 public Behavior createBehavior(StringSE behaviorId) throws FacesException
インスタンス化とは、指定された動作 ID の addBehavior() の前回の呼び出しで指定したクラスの新しい Behavior インスタンスを返します。
behaviorId - 新しい Behavior インスタンスを作成して返す動作 IDFacesException - Behavior を作成できない場合 NullPointerExceptionSE - behaviorId が null の場合 public IteratorSE<StringSE> getBehaviorIds()
この Application に現在登録されている一連の動作 ID に対して Iterator を返します。
public abstract void addComponent(StringSE componentType, StringSE componentClass)
コンポーネント型の新しいマッピングを、対応する UIComponent クラスの名前に登録します。これにより、createComponent() への後続の呼び出しが UIComponent インスタンスのファクトリとして機能できるようになります。
componentType - 登録するコンポーネント型 componentClass - 対応する UIComponent 実装の完全修飾クラス名 NullPointerExceptionSE - componentType または componentClass が null の場合 public abstract UIComponent createComponent(StringSE componentType) throws FacesException
インスタンス化とは、指定されたコンポーネント型の addComponent() の前回の呼び出しで指定したクラスの新しい UIComponent インスタンスを返します。
コンポーネントインスタンスが返される前に、ListenerFor(または ListenersFor)または ResourceDependency(または ResourceDependencies)アノテーションの存在をインスペクションする必要があります。これらのアノテーションのいずれかが存在する場合、このメソッドから返される前に、ListenerFor または ResourceDependency にリストされているアクションをコンポーネントに対して実行する必要があります。createComponent のこのバリアントは、前述のアノテーションのいずれかについて返されるコンポーネントについて Renderer をインスペクションしてはなりません。このようなインスペクションは、createComponent(ValueExpression, FacesContext, String, String) または createComponent(FacesContext, String, String) の状態です。
componentType - 新しい UIComponent インスタンスを作成して返すコンポーネント型 FacesException - 指定した型の UIComponent を作成できない場合 NullPointerExceptionSE - componentType が null の場合 public abstract UIComponent createComponent(ValueBinding componentBinding, FacesContext context, StringSE componentType) throws FacesException
createComponent(javax.el.ValueExpression,javax.faces.context.FacesContext,java.lang.String) に置き換えられました。 引数 componentBinding を ValueExpression の実装にラップし、createComponent(javax.el.ValueExpression,javax.faces.context.FacesContext,java.lang.String) を呼び出します。
componentBinding - コンポーネント値バインディング式を表す ValueBinding (通常、カスタムタグの component 属性によって指定されます)context - 現在のリクエストの FacesContextcomponentType - ValueBinding がコンポーネントインスタンスを返さない場合に作成するコンポーネント型 FacesException - UIComponent を作成できない場合 NullPointerExceptionSE - パラメーターが null の場合 public UIComponent createComponent(ValueExpression componentExpression, FacesContext context, StringSE componentType) throws FacesException
指定された ValueExpression で getValue() メソッドを呼び出します。UIComponent インスタンスを返す場合は、このメソッドの値として返します。そうでない場合は、指定されたコンポーネント型の新しい UIComponent インスタンスをインスタンス化し、新しいコンポーネントを指定された ValueExpression の setValue() メソッドに渡して、それを返します。
コンポーネントインスタンスが返される前に、ListenerFor(または ListenersFor)または ResourceDependency(または ResourceDependencies)アノテーションの存在をインスペクションする必要があります。これらのアノテーションのいずれかが存在する場合、このメソッドから返される前に、ListenerFor または ResourceDependency にリストされているアクションをコンポーネントに対して実行する必要があります。createComponent のこのバリアントは、前述のアノテーションのいずれかについて返されるコンポーネントについて Renderer をインスペクションしてはなりません。このようなインスペクションは、createComponent(ValueExpression, FacesContext, String, String) または createComponent(FacesContext, String, String) の状態です。
Application を装飾するユーザーが引き続き機能できるように、UnsupportedOperationException をスローするデフォルトの実装が提供されています。
componentExpression - コンポーネント値式を表す ValueExpression (通常、カスタムタグの component 属性によって指定されます)context - 現在のリクエストの FacesContextcomponentType - ValueExpression がコンポーネントインスタンスを返さない場合に作成するコンポーネント型 FacesException - UIComponent を作成できない場合 NullPointerExceptionSE - パラメーターが null の場合 public UIComponent createComponent(ValueExpression componentExpression, FacesContext context, StringSE componentType, StringSE rendererType)
createComponent(ValueExpression, FacesContext, String) と同様ですが、返されるコンポーネントの Renderer を調べて、そのメソッドのドキュメントで指定されている createComponent(ValueExpression, FacesContext, String) に記載されているアノテーションを確認する必要があります。インスペクションする Renderer インスタンスは、FacesContext.getRenderKit() を呼び出し、結果に対して RenderKit.getRenderer(java.lang.String, java.lang.String) を呼び出し、最初の引数として引数 componentType を渡し、新しく作成されたコンポーネントで UIComponent.getFamily() を呼び出した結果を 2 番目の引数として取得する必要があります。そのような Renderer が見つからない場合は、有用なエラーメッセージとともにメッセージをログに記録する必要があります。それ以外の場合は、新しく作成された UIComponent インスタンスで UIComponent.setRendererType(java.lang.String) を呼び出し、引数 rendererType を引数として渡す必要があります。
Application を装飾するユーザーが引き続き機能できるように、UnsupportedOperationException をスローするデフォルトの実装が提供されています。
componentExpression - コンポーネント値式を表す ValueExpression (通常、カスタムタグの component 属性によって指定されます)context - 現在のリクエストの FacesContextcomponentType - ValueExpression がコンポーネントインスタンスを返さない場合に作成するコンポーネント型 rendererType - このコンポーネントをレンダリングする Renderer のレンダラー型。このパラメーターには、null 値を受け入れる必要があります。FacesException - UIComponent を作成できない場合 NullPointerExceptionSE - パラメーター componentExpression、context、componentType のいずれかが null である場合 public UIComponent createComponent(FacesContext context, StringSE componentType, StringSE rendererType)
createComponent(String) と同様ですが、返されるコンポーネントの Renderer を調べて、そのメソッドのドキュメントで指定されている createComponent(ValueExpression, FacesContext, String) に記載されているアノテーションを確認する必要があります。インスペクションする Renderer インスタンスは、FacesContext.getRenderKit() を呼び出し、結果に対して RenderKit.getRenderer(java.lang.String, java.lang.String) を呼び出し、最初の引数として引数 componentType を渡し、新しく作成されたコンポーネントで UIComponent.getFamily() を呼び出した結果を 2 番目の引数として取得する必要があります。そのような Renderer が見つからない場合は、有用なエラーメッセージとともにメッセージをログに記録する必要があります。それ以外の場合は、新しく作成された UIComponent インスタンスで UIComponent.setRendererType(java.lang.String) を呼び出し、引数 rendererType を引数として渡す必要があります。
Application を装飾するユーザーが機能を継続できるように、UnsupportedOperationException をスローするデフォルトの実装が提供されています
context - 現在のリクエストの FacesContextcomponentType - 作成するコンポーネント型 rendererType - このコンポーネントをレンダリングする Renderer のレンダラー型。このパラメーターには、null 値を受け入れる必要があります。FacesException - UIComponent を作成できない場合 NullPointerExceptionSE - パラメーター context または componentType のいずれかが null である場合 public UIComponent createComponent(FacesContext context, Resource componentResource)
インスタンス化とは、引数 Resource から新しい UIComponent インスタンスを返します。UIComponent をインスタンス化して返すには、意味的に次と同等のアルゴリズムに従う必要があります。
ViewHandler.getViewDeclarationLanguage(javax.faces.context.FacesContext, java.lang.String) を呼び出して、この Application インスタンスの ViewDeclarationLanguage への参照を取得し、引数 FacesContext の UIViewRoot で UIViewRoot.getViewId() を呼び出して見つかった viewId を渡します。
ViewDeclarationLanguage.getComponentMetadata(javax.faces.context.FacesContext, javax.faces.application.Resource) を呼び出し、facesContext 引数と componentResource 引数をこのメソッドに渡すことにより、この複合コンポーネントの複合コンポーネントメタデータへの参照を取得します。このバージョンの Jakarta Server Faces 仕様では、コンポーネントメタデータへの API として JavaBeans を使用します。
コンポーネントのメタデータから BeanDescriptor を取得し、引数として UIComponent.COMPOSITE_COMPONENT_TYPE_KEY を渡してその getValue() メソッドを呼び出すことにより、コンポーネントの作成者がこのコンポーネントインスタンスに対して componentType を宣言しているかどうかを判断します。null でない場合、その結果は、この Resource コンポーネント用に作成される UIComponent の component-type を値とする ValueExpression でなければなりません。createComponent(java.lang.String) にコールスルーしてコンポーネントを作成します。
それ以外の場合は、ViewDeclarationLanguage.getScriptComponentResource(javax.faces.context.FacesContext, javax.faces.application.Resource) を呼び出して、この Resource のスクリプトベースのコンポーネントが見つかるかどうかを確認します。結果が非 null であり、仕様書の JSF.4.3 にリストされている言語のいずれかで記述されたスクリプトである場合は、スクリプトリソースから UIComponent インスタンスを作成します。
それ以外の場合は、library-name を引数 componentResource で Resource.getLibraryName() を呼び出してからの戻り値とし、resource-name を引数 componentResource で Resource.getResourceName() を呼び出してからの戻り値とします。resource-name からファイル拡張子を削除して完全修飾 Java クラス名を作成し、fqcn を library-name + "." + resource-name にします。fqcn という名前のクラスが見つからない場合は、何もせずに次の手順に進みます。InstantiationException、IllegalAccessException、ClassCastException のいずれかがスローされた場合は、例外を FacesException でラップして、再スローします。他の例外がスローされた場合は、例外をログに記録して、次の手順に進みます。
前の手順のいずれでも UIComponent インスタンスが生成されなかった場合は、"javax.faces.NamingContainer" を引数として渡して createComponent(java.lang.String) を呼び出します。
UIComponent インスタンスで UIComponent.setRendererType(java.lang.String) を呼び出し、引数として "javax.faces.Composite" を渡します。
引数 Resource を、キー Resource.COMPONENT_RESOURCE_KEY の UIComponent の属性 Map に格納します。
複合コンポーネントのメタデータを、キー UIComponent.BEANINFO_KEY の UIComponent の属性 Map に格納します。
コンポーネントインスタンスが返される前に、ListenerFor アノテーションの存在をインスペクションする必要があります。このアノテーションが存在する場合、このメソッドから返される前に、ListenerFor にリストされているアクションをコンポーネントに対して実行する必要があります。
Application を装飾するユーザーが引き続き機能できるように、UnsupportedOperationException をスローするデフォルトの実装が提供されています。
context - 現在のリクエストの FacesContextcomponentResource - コンポーネントの実装を提供するソースファイルを指す Resource。FacesException - Resource から UIComponent を作成できない場合 NullPointerExceptionSE - パラメーターが null の場合 NullPointerExceptionSE - 何らかの理由で、上記のように ViewDeclarationLanguage インスタンスを取得できない場合。public abstract IteratorSE<StringSE> getComponentTypes()
この Application に対して現在定義されているコンポーネント型のセットに対して Iterator を返します。
public abstract void addConverter(StringSE converterId, StringSE converterClass)
対応する Converter クラスの名前へのコンバーター ID の新しいマッピングを登録します。これにより、createConverter() への後続の呼び出しが Converter インスタンスのファクトリとして機能できるようになります。
converterId - 登録するコンバーター IDconverterClass - 対応する Converter 実装の完全修飾クラス名 NullPointerExceptionSE - converterId または converterClass が null の場合 public abstract void addConverter(ClassSE<?> targetClass, StringSE converterClass)
指定されたターゲットクラスの変換を実行できる新しいコンバータークラスを登録します。
targetClass - このコンバーターが登録されているクラス converterClass - 対応する Converter 実装の完全修飾クラス名 NullPointerExceptionSE - targetClass または converterClass が null の場合 public abstract Converter createConverter(StringSE converterId)
インスタンス化とは、指定されたコンバーター ID の addConverter() の前回の呼び出しで指定したクラスの新しい Converter インスタンスを返します。
"javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE" アプリケーション構成パラメーターの値の String 表現の toLowerCase() が "true" (引用符なし)であり、返される Converter インスタンスが DateTimeConverter のインスタンスである場合、DateTimeConverter.setTimeZone(java.util.TimeZone) を呼び出して、TimeZone.getDefault() からの戻り値を渡す必要があります。
引数 converter は、ResourceDependency アノテーションの存在をインスペクションする必要があります。ResourceDependency アノテーションが存在する場合は、ResourceDependency で説明されているアクションを実行する必要があります。ResourceDependency アノテーションが存在しない場合は、引数 converter をインスペクションして ResourceDependencies アノテーションが存在するかどうかを確認する必要があります。ResourceDependencies アノテーションが存在する場合は、ResourceDependencies で説明されているアクションを実行する必要があります。
converterId - 新しい Converter インスタンスを作成して返すコンバーター IDFacesException - Converter を作成できない場合 NullPointerExceptionSE - converterId が null の場合 public abstract Converter createConverter(ClassSE<?> targetClass)
インスタンス化とは、指定された型のオブジェクトのための変換を行うことができるように自分自身を登録したクラスの新しい Converter インスタンスを返します。そのような Converter クラスを識別できない場合は、null を返します。
適切な Converter クラスを見つけるために、次のアルゴリズムが実行され、適切な Converter クラスが見つかるとすぐに停止します。
Converter を見つけます。Converter を見つけます。Converter を見つけて、継承階層を再帰的に処理します。Converter に Class を受け入れる単一の引数コンストラクターがある場合は、そのコンストラクターを使用して Converter をインスタンス化し、引数 targetClass を唯一の引数として渡します。それ以外の場合は、引数なしのコンストラクターを使用してください。
"javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE" アプリケーション構成パラメーターの値の String 表現の toLowerCase() が "true" (引用符なし)であり、返される Converter インスタンスが DateTimeConverter のインスタンスである場合、DateTimeConverter.setTimeZone(java.util.TimeZone) を呼び出して、TimeZone.getDefault() からの戻り値を渡す必要があります。
targetClass - Converter を返すターゲットクラス FacesException - Converter を作成できない場合 NullPointerExceptionSE - targetClass が null の場合 public abstract IteratorSE<StringSE> getConverterIds()
この Application の現在登録されているコンバーター ID のセットに対して Iterator を返します。
public abstract IteratorSE<ClassSE<?>> getConverterTypes()
Converter クラスが明示的に登録されている Class インスタンスのセットに対して Iterator を返します。
public void addDefaultValidatorId(StringSE validatorId)
ビュー内のすべての UIInput コンポーネントに適用される ID でバリデーターを登録します。このロールを最も頻繁に果たすバリデーターは BeanValidator です。このメソッドの使用契約は、バリデーターが通常の "by-id" 登録メカニズムを使用して登録されていることを前提としています。
Application を装飾するユーザーが引き続き作業できるように、アクションを実行しない実装が提供されます。
validatorId - バリデータ ID。public MapSE<StringSE,StringSE> getDefaultValidatorInfo()
現在登録されているデフォルトのバリデーター ID のセットとこの Application のクラス名に対して不変の Map を返します。
Application を装飾するユーザーが引き続き作業できるように、Collections.emptyMap を返す実装が提供されます。
public ExpressionFactory getExpressionFactory()
このアプリケーションの ExpressionFactory インスタンスを返します。このインスタンスは、コンビニエンスメソッド evaluateExpressionGet(javax.faces.context.FacesContext, java.lang.String, java.lang.Class<? extends T>) によって使用されます。
実装は、JspFactory.getDefaultFactory().getJspApplicationContext(servletContext).getExpressionFactory() を呼び出して、Jakarta Server Pages コンテナーから ExpressionFactory を返す必要があります。
Application を装飾するユーザーが引き続き作業できるように、UnsupportedOperationException をスローする実装が提供されます。
public <T> T evaluateExpressionGet(FacesContext context, StringSE expression, ClassSE<? extends T> expectedType) throws ELException
式を評価して値を取得します。
getExpressionFactory() を呼び出してから、引数 expression および expectedType を渡して ExpressionFactory.createValueExpression(javax.el.ELContext, java.lang.String, java.lang.Class<?>) を呼び出します。FacesContext.getELContext() を呼び出し、それを ValueExpression.getValue(javax.el.ELContext) に渡して、結果を返します。
Application を装飾するユーザーが引き続き作業できるように、UnsupportedOperationException をスローする実装が提供されます。
T - 戻り値の型。context - Faces コンテキスト。expression - 表現。expectedType - 予想される型。ELExceptionpublic abstract MethodBinding createMethodBinding(StringSE ref, ClassSE<?>[] params) throws ReferenceSyntaxException
getExpressionFactory() を呼び出して ExpressionFactory.createMethodExpression(javax.el.ELContext, java.lang.String, java.lang.Class<?>, java.lang.Class<?>[]) を呼び出すことによって置き換えられました。getExpressionFactory() を呼び出してから ExpressionFactory.createMethodExpression(javax.el.ELContext, java.lang.String, java.lang.Class<?>, java.lang.Class<?>[]) を呼び出し、指定された引数を渡して、結果を MethodBinding 実装でラップし、それを返します。
ref - MethodBinding インスタンスを返すメソッドバインディング式 params - 呼び出されるメソッドのシグネチャーと互換性がなければならないパラメーターシグネチャー、またはパラメーターをとらないメソッドの場合は長さゼロの配列または null NullPointerExceptionSE - ref が null の場合 ReferenceSyntaxException - 指定された ref の構文が無効な場合 public abstract IteratorSE<LocaleSE> getSupportedLocales()
このアプリケーションでサポートされている Locale を介して Iterator を返します。
public abstract void setSupportedLocales(CollectionSE<LocaleSE> locales)
このアプリケーションでサポートされる Locale を表す Locale インスタンスを設定します。
locales - このアプリケーションでサポートされている Locale のセット NullPointerExceptionSE - 引数 newLocales が null の場合。public void addELContextListener(ELContextListener listener)
Faces アプリケーションが ELContext インスタンスの作成時に通知される ELContextListener を登録する方法を提供します。このリスナーは、リクエストごとに 1 回呼び出されます。
Application を装飾するユーザーが引き続き作業できるように、UnsupportedOperationException をスローする実装が提供されます。
listener - 追加する Jakarta Expression Language コンテキストリスナー。public void removeELContextListener(ELContextListener listener)
ELContextListener のリストから引数 listener を削除します。listener が null の場合、例外はスローされず、アクションは実行されません。listener がリストにない場合、例外はスローされず、アクションは実行されません。
Application を装飾するユーザーが引き続き作業できるように、UnsupportedOperationException をスローする実装が提供されます。
listener - 削除する Jakarta Expression Language コンテキストリスナー。public ELContextListener[] getELContextListeners()
addELContextListener(javax.el.ELContextListener) が呼び出されていない場合、このメソッドは空の配列を返す必要があります。
それ以外の場合は、addELContextListener(javax.el.ELContextListener) の呼び出しによって追加されたリスナーのリストを表す配列を返します。
Application を装飾するユーザーが引き続き作業できるように、UnsupportedOperationException をスローする実装が提供されます。
public abstract void addValidator(StringSE validatorId, StringSE validatorClass)
対応する Validator クラスの名前へのバリデータ ID の新しいマッピングを登録します。これにより、createValidator() への後続の呼び出しが Validator インスタンスのファクトリとして機能できるようになります。
validatorId - 登録するバリデータ IDvalidatorClass - 対応する Validator 実装の完全修飾クラス名 NullPointerExceptionSE - validatorId または validatorClass が null の場合 public abstract Validator createValidator(StringSE validatorId) throws FacesException
インスタンス化とは、指定されたバリデータ ID の addValidator() の前回の呼び出しで指定したクラスの新しい Validator インスタンスを返します。
引数 validator は、ResourceDependency アノテーションの存在をインスペクションする必要があります。ResourceDependency アノテーションが存在する場合は、ResourceDependency で説明されているアクションを実行する必要があります。ResourceDependency アノテーションが存在しない場合は、引数 validator をインスペクションして ResourceDependencies アノテーションが存在するかどうかを確認する必要があります。ResourceDependencies アノテーションが存在する場合は、ResourceDependencies で説明されているアクションを実行する必要があります。
validatorId - 新しい Validator インスタンスを作成して返すためのバリデータ IDFacesException - 指定した ID の Validator を作成できない場合 NullPointerExceptionSE - validatorId が null の場合 public abstract IteratorSE<StringSE> getValidatorIds()
この Application の現在登録されているバリデーター ID のセットに対して Iterator を返します。
public abstract ValueBinding createValueBinding(StringSE ref) throws ReferenceSyntaxException
getExpressionFactory() を呼び出して ExpressionFactory.createValueExpression(javax.el.ELContext, java.lang.String, java.lang.Class<?>) を呼び出すことによって置き換えられました。getExpressionFactory() を呼び出し、次に ExpressionFactory.createValueExpression(javax.el.ELContext, java.lang.String, java.lang.Class<?>) を呼び出し、引数 ref、expectedType の場合は Object.class、fnMapper の場合は null を渡します。
ref - ValueBinding インスタンスを返す値バインディング式 NullPointerExceptionSE - ref が null の場合 ReferenceSyntaxException - 指定された ref の構文が無効な場合 public void publishEvent(FacesContext context, ClassSE<? extends SystemEvent> systemEventClass, ObjectSE source)
FacesContext.isProcessingEvents() が true であり、systemEventClass で表される型のイベントのリスナーが 1 つ以上ある場合は、それらのリスナーを呼び出し、source をイベントのソースとして渡します。実装は、特定の systemEventClass および source のリスナーがインストールされているかどうかを判断する際に可能な限り高速である必要があり、そのような判断が行われるとすぐに戻る必要があります。publishEvent の実装は、リスナーインスタンスの保存と取得に関して subscribeToEvent(java.lang.Class<? extends javax.faces.event.SystemEvent>, java.lang.Class<?>, javax.faces.event.SystemEventListener) に記載されている要件を満たす必要があります。具体的には、subscribeToEvent(Class,Class,SystemEventListener) が呼び出された場合、sourceClass 引数は、publishEvent() の呼び出しで source 引数の Class と正確に一致する必要があります。実装は、イベントの公開先のリスナーを見つけるために、subscribeToEvent(Class,Class,SystemEventListener) に渡された sourceClass と publishEvent() に渡された sourceClass の間の一致を探すときに、継承階層インスペクションを実行してはなりません。source 引数の Class が、リスナーが subscribeToEvent() を使用してサブスクライブされたときに使用された sourceClass の Class と一致しない場合、publishEvent(FacesContext,Class,Class,Object) を使用して、リスナーのルックアップと一致を実行するために使用される Class を提供できます。
デフォルトの実装では、リスナーインスタンスを見つけて呼び出すために、以下と意味的に同等のアルゴリズムを実装する必要があります。
source 引数が SystemEventListenerHolder を実装している場合は、systemEventClass 引数を渡して SystemEventListenerHolder.getListenersForEventClass(java.lang.Class<? extends javax.faces.event.SystemEvent>) を呼び出します。リストが空でない場合は、リストに対してアルゴリズム traverseListenerList を実行します。
UIViewRoot 上の subscribeToEvent(Class, Class, javax.faces.event.SystemEventListener) への以前の呼び出しによってビューレベルリスナーがインストールされている場合は、UIViewRoot にインストールされたそのイベントのリスナーのリストに対してアルゴリズム traverseListenerList を実行します。
subscribeToEvent(Class, Class, javax.faces.event.SystemEventListener) への以前の呼び出しによって Application レベルのリスナーがインストールされている場合は、リストに対してアルゴリズム traverseListenerList を実行します。
subscribeToEvent(Class, javax.faces.event.SystemEventListener) への以前の呼び出しによって Application レベルのリスナーがインストールされている場合は、リストに対してアルゴリズム traverseListenerList を実行します。
processListener メソッドを呼び出す行為によって AbortProcessingException がスローされた場合、リスナーの処理を中止し、このイベントのリスナーのそれ以上の処理を行わず、例外を Level.SEVERE でログに記録する必要があります。
アルゴリズム traverseListenerList: リスト内のリスナーごとに
source 引数を渡して、SystemEventListener.isListenerForSource(java.lang.Object) を呼び出します。これが false を返す場合は、リスナーに対して何も実行しないでください。
それ以外の場合、リスナーインスタンスに渡されるイベントがまだ構築されていない場合は、Object を受け取る 1 引数コンストラクターに引数として source を渡して、イベントを構築します。この同じイベントインスタンスをすべてのリスナーインスタンスに渡す必要があります。
SystemEvent.isAppropriateListener(javax.faces.event.FacesListener) を呼び出し、リスナーインスタンスを引数として渡します。これが false を返す場合は、リスナーに対して何も実行しないでください。
SystemEvent.processListener(javax.faces.event.FacesListener) を呼び出し、リスナーインスタンスを渡します。
Application を装飾するユーザーが機能を継続できるように、UnsupportedOperationException をスローするデフォルトの実装が提供されています
context - 現在のリクエストの FacesContext systemEventClass - 公開されているイベントの Class。source - 型 systemEventClass のイベントのソース。NullPointerExceptionSE - context、systemEventClass、source のいずれかが null の場合 public void publishEvent(FacesContext context, ClassSE<? extends SystemEvent> systemEventClass, ClassSE<?> sourceBaseType, ObjectSE source)
このメソッドは、source 引数の Class を使用する代わりに、ランタイムが引数 sourceBaseType を使用して一致するリスナーを検索する必要があることを除いて、publishEvent(FacesContext,Class,Object) とまったく同じように機能します。
Application を装飾するユーザーが機能を継続できるように、UnsupportedOperationException をスローするデフォルトの実装が提供されています
context - 現在のリクエストの FacesContext systemEventClass - 公開されているイベントの Class。sourceBaseType - このイベントの公開先のリスナーを検索するために使用する必要があるソースイベントの Class。この引数が null の場合、source.getClass() からの戻り値を sourceBaseType として使用する必要があります。source - 型 systemEventClass のイベントのソース。NullPointerExceptionSE - sourceBaseType 以外の引数が null の場合 public void subscribeToEvent(ClassSE<? extends SystemEvent> systemEventClass, ClassSE<?> sourceClass, SystemEventListener listener)
引数 listener で参照されるリスナーインスタンスを、型 sourceClass のオブジェクトから発生する型 systemEventClass のイベントのリスナーとしてアプリケーションにインストールします。
引数 sourceClass が非 null、sourceClass、systemEventClass の場合は、systemEventClass および sourceClass によって参照される Class のインスタンスを指定して publishEvent(javax.faces.context.FacesContext, java.lang.Class<? extends javax.faces.event.SystemEvent>, java.lang.Object) を実装することにより、listener をすばやく検索できるように、引数 listener をアプリケーションに格納するために null、sourceClass、systemEventClass を使用する必要があります。引数 sourceClass が null の場合、systemEventClass のみが指定された publishEvent(javax.faces.context.FacesContext, java.lang.Class<? extends javax.faces.event.SystemEvent>, java.lang.Object) の実装によって、listener が検出可能である必要があります。
このメソッドへの以前の呼び出しによってサブスクライブされたイベントの処理中に、このメソッドを呼び出すことは有効です。
systemEventClass - listener を発生させる必要があるイベントの Class sourceClass - 型 systemEventClass のイベントを発生させるインスタンスの Class。null の可能性があります。listener - 型 systemEventClass のイベントが発生したときに SystemEventListener.processEvent(javax.faces.event.SystemEvent) メソッドを呼び出す必要がある SystemEventListener の実装。NullPointerExceptionSE - systemEventClass または listener の任意の組み合わせが null である場合。public void subscribeToEvent(ClassSE<? extends SystemEvent> systemEventClass, SystemEventListener listener)
引数 listener によって参照されるリスナーインスタンスを、型 systemEventClass のイベントのリスナーとしてアプリケーションにインストールします。デフォルトの実装は、sourceClass 引数として null を渡す subscribeToEvent(Class, Class, javax.faces.event.SystemEventListener) を呼び出すだけです。
Application を装飾するユーザーが機能を継続できるように、UnsupportedOperationException をスローするデフォルトの実装が提供されています
systemEventClass - listener を発生させる必要があるイベントの Class listener - 型 systemEventClass のイベントが発生したときに SystemEventListener.processEvent(javax.faces.event.SystemEvent) メソッドを呼び出す必要がある SystemEventListener の実装。 このメソッドを呼び出すことが有効な場合に関する追加要件については、subscribeToEvent(java.lang.Class,java.lang.Class,javax.faces.event.SystemEventListener) を参照してください。
NullPointerExceptionSE - systemEventClass または listener の任意の組み合わせが null である場合。public void unsubscribeFromEvent(ClassSE<? extends SystemEvent> systemEventClass, ClassSE<?> sourceClass, SystemEventListener listener)
型 sourceClass のオブジェクトから発生する型 systemEventClass のイベントのリスナーとして、引数 listener によって参照されるリスナーインスタンスをアプリケーションから削除します。リスナーの保管方法、リスナーを削除する方法の仕様については、subscribeToEvent(Class, Class, javax.faces.event.SystemEventListener) を参照してください。
このメソッドを呼び出すことが有効な場合に関する追加要件については、subscribeToEvent(java.lang.Class,java.lang.Class,javax.faces.event.SystemEventListener) を参照してください。
systemEventClass - listener を発生させる必要があるイベントの Class sourceClass - 型 systemEventClass のイベントを発生させるインスタンスの Class。null の可能性があります。listener - 内部データ構造から削除する SystemEventListener の実装。NullPointerExceptionSE - context、systemEventClass、listener の任意の組み合わせが null である場合。public void unsubscribeFromEvent(ClassSE<? extends SystemEvent> systemEventClass, SystemEventListener listener)
型 systemEventClass のイベントのリスナーとして、引数 listener によって参照されるリスナーインスタンスをアプリケーションから削除します。デフォルトの実装は、sourceClass 引数として null を渡す unsubscribeFromEvent(Class, javax.faces.event.SystemEventListener) を呼び出すだけです。
このメソッドを呼び出すことが有効な場合に関する追加要件については、subscribeToEvent(java.lang.Class,java.lang.Class,javax.faces.event.SystemEventListener) を参照してください。
systemEventClass - listener を発生させる必要があるイベントの Class listener - 内部データ構造から削除する SystemEventListener の実装。NullPointerExceptionSE - context、systemEventClass、listener の任意の組み合わせが null である場合。public SearchExpressionHandler getSearchExpressionHandler()
このアプリケーションのスレッドセーフシングルトン SearchExpressionHandler を返します。
SearchExpressionHandlerpublic void setSearchExpressionHandler(SearchExpressionHandler searchExpressionHandler)
アプリケーションが使用する SearchExpressionHandler インスタンスを設定します。
searchExpressionHandler - SearchExpressionHandlerNullPointerExceptionSE - searchExpressionHandler が null の場合 IllegalStateExceptionSE - このアプリケーションの Lifecycle インスタンスによって少なくとも 1 つのリクエストが処理された後にこのメソッドが呼び出された場合。public void addSearchKeywordResolver(SearchKeywordResolver resolver)
引数 resolver をリゾルバーチェーンの先頭に追加します。
この方法で登録された SearchKeywordResolver は、一度登録すると削除できません。
デフォルトの実装は UnsupportedOperationException をスローし、Application を継承する既存のアプリケーションを壊さないという唯一の目的のために提供されています。
resolver - 追加する SearchKeywordResolver。IllegalStateExceptionSE - FacesServlet への最初のリクエストが処理された後に呼び出された場合。NullPointerExceptionSE - リゾルバーが null の場合。public SearchKeywordResolver getSearchKeywordResolver()
すべての検索キーワード解決に使用されるシングルトン SearchKeywordResolver インスタンスを返します。これは実際には複合 SearchKeywordResolver のインスタンスであり、次の SearchKeywordResolver インスタンスを次の順序で含める必要があります。
アプリケーション構成リソースの <search-keyword-resolver> 要素を使用して宣言された SearchKeywordResolver インスタンス。
addSearchKeywordResolver(javax.faces.component.search.SearchKeywordResolver) の呼び出しによって追加された SearchKeywordResolver インスタンス。
@all、@child(n)、@form、@id(...)、@namingcontainer、@next、@none、@parent、@previous、@root、@this の SearchKeywordResolver 実装。
デフォルトの実装は UnsupportedOperationException をスローし、Application を継承する既存のアプリケーションを壊さないという唯一の目的のために提供されています。
SearchKeywordResolverCopyright © 2019 Eclipse Foundation.
Use is subject to license terms.