インターフェース JspApplicationContext
public interface JspApplicationContextJSP コンテナーに関連するアプリケーションスコープの情報を格納します。JSP コンテナーは、
ServletContextインスタンスごとにJspApplicationContextの単一インスタンスを作成する必要があります。JspApplicationContextのインスタンスは、静的JspFactory.getJspApplicationContext(jakarta.servlet.ServletContext)メソッドを呼び出し、対応する Web アプリケーションのServletContextを渡すことによって取得されます。JspApplicationContextは、JSP アプリケーションに次のサービスを提供します。- JSP ページおよびタグファイルに含まれる EL 式の変数を解決するために使用される
ELResolverの登録を許可します。 - EL 式のプログラムによる評価を JSP コンテナーに許可するのではなく、実行する必要があるアプリケーションまたはフレームワークに
ExpressionFactoryのインスタンスを提供します。 - 新しい
ELContextが作成されるたびに通知するために、ELContextListenerインスタンスの添付を許可します。これは、アプリケーションがカスタムコンテキストオブジェクトをプラグ可能なELResolverで使用できるようにする場合に必要です。
- 導入:
- JSP 2.1
- 関連事項:
ServletContext,JspFactory,ELResolver,ExpressionFactory,ELContextListener
- JSP ページおよびタグファイルに含まれる EL 式の変数を解決するために使用される
方法の概要
すべてのメソッド インスタンスメソッド 抽象メソッド 修飾子と型 メソッド 説明 voidaddELContextListener(ELContextListener listener)新しいELContextが作成されるたびにコンテキストオブジェクトを追加できるように、ELContextListenerを登録します。voidaddELResolver(ELResolver resolver)ELResolverを追加して、JSP ページおよびタグファイルに表示される EL 式の EL 変数およびプロパティの解決方法に影響を与えます。ExpressionFactorygetExpressionFactory()EL 式を解析および評価できるように、ValueExpressionおよびMethodExpressionの作成に使用されるファクトリを返します。
メソッドの詳細
addELResolver
void addELResolver(ELResolver resolver)
ELResolverを追加して、JSP ページおよびタグファイルに表示される EL 式の EL 変数およびプロパティの解決方法に影響を与えます。例: EL 式 ${employee.lastName}, では、
ELResolverは「従業員」が参照するオブジェクトとその "lastName" プロパティの検索方法を決定します。式を評価するとき、JSP コンテナーは、一連の標準リゾルバーと、このメソッドを介して登録されたリゾルバーを参照します。リゾルバーのセットは、次の順序で参照されます。
ImplicitObjectELResolverELResolverは、この方法で登録された順序で登録されます。MapELResolverListELResolverArrayELResolverBeanELResolverScopedAttributeELResolver
アプリケーションがクライアントからのリクエストを受信した後に
ELResolverを登録することは不正です。それ以降にELResolverを登録しようとすると、IllegalStateExceptionがスローされます。この制限は、JSP コンテナーが、標準のものを除いて、チェーンに追加の
ELResolverがない一般的なケースに最適化できるようにするために設けられています。すでにチェーンにあるCompositeELResolverに、初期化の前後にELResolverを追加することは許可されています。このメソッドで登録された
ELResolverは、いったん登録すると削除できません。- パラメーター:
resolver- 新しいELResolver- 例外:
IllegalStateExceptionSE- すべてのServletContextListenerでcontextInitializedメソッドが呼び出された後で、このメソッドを呼び出そうとした場合。
getExpressionFactory
ExpressionFactory getExpressionFactory()
EL 式を解析および評価できるように、ValueExpressionおよびMethodExpressionの作成に使用されるファクトリを返します。- 戻り値:
ExpressionFactoryの具体的な実装。
addELContextListener
void addELContextListener(ELContextListener listener)
新しいELContextが作成されるたびにコンテキストオブジェクトを追加できるように、ELContextListenerを登録します。少なくとも、作成された
ELContextオブジェクトには、JSP コンテナーによって追加されたこのリクエストのJspContextへの参照が含まれます。これは、addELResolver(jakarta.el.ELResolver)にリストされているすべてのデフォルトELResolverには十分です。JspContext.classは、JspContextオブジェクト参照の ELContext.putContext() へのキーとして使用されることに注意してください。この方法は通常、
JspContext以外のコンテキストを必要とする独自のELResolverを登録するフレームワークおよびアプリケーションで使用されます。リスナーは通常、イベントオブジェクトで提供されるELContextに必要なコンテキストを追加します。コンテキストを追加するリスナーを登録すると、スタック内のELResolverは、解決を行うときに必要なコンテキストにアクセスできます。- パラメーター:
listener- 新しいELContextが作成されたときに通知されるリスナー。