クラス ScopedAttributeELResolver
- java.lang.ObjectSE
-
- jakarta.el.ELResolver
-
- jakarta.servlet.jsp.el.ScopedAttributeELResolver
public class ScopedAttributeELResolver extends ELResolver
スコープ属性の変数解決動作を定義します。このリゾルバーは、
baseがnullである可変解決を処理します。PageContext.findAttribute()で一致する属性を検索します。setValueの場合に見つからない場合は、指定された名前でページスコープに新しい属性が作成されます。- 導入:
- JSP 2.1
- 関連事項:
ELResolver
フィールドのサマリー
クラス jakarta.el.ELResolver から継承されたフィールド
RESOLVABLE_AT_DESIGN_TIME, TYPE
コンストラクターの概要
コンストラクター コンストラクター 説明 ScopedAttributeELResolver()
メソッドのサマリー
すべてのメソッド インスタンスメソッド 具象メソッド 非推奨のメソッド 修飾子と型 メソッド 説明 ClassSE<StringSE>getCommonPropertyType(ELContext context, ObjectSE base)基本オブジェクトがnullの場合、String.classを返します。IteratorSE<FeatureDescriptorSE>getFeatureDescriptors(ELContext context, ObjectSE base)非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。このメソッドは EL 5.0 で非推奨となり、EL 6.0 (Jakarta EE 11) で削除される予定です。ClassSE<ObjectSE>getType(ELContext context, ObjectSE base, ObjectSE property)ベースオブジェクトがnullの場合、Object.classを返し、スコープ属性に設定するのに任意の型が有効であることを示します。ObjectSEgetValue(ELContext context, ObjectSE base, ObjectSE property)ベースオブジェクトがnullの場合、ページ、リクエスト、セッション、アプリケーションスコープで指定された名前の属性を検索し、現在の名前の属性が存在する場合はそれを返します。booleanisReadOnly(ELContext context, ObjectSE base, ObjectSE property)ベースオブジェクトがnullの場合、falseを返し、スコープ属性が読み取り専用にならないことを示します。voidsetValue(ELContext context, ObjectSE base, ObjectSE property, ObjectSE val)ベースオブジェクトがnullの場合、既存のスコープ属性を新しい値に設定するか、この名前で存在しない場合は新しいスコープ属性を作成します。クラス jakarta.el.ELResolver から継承されたメソッド
convertToType, invoke
メソッドの詳細
getValue
public ObjectSE getValue(ELContext context, ObjectSE base, ObjectSE property)
ベースオブジェクトがnullの場合、ページ、リクエスト、セッション、アプリケーションスコープで指定された名前の属性を検索し、現在の名前の属性が存在する場合はそれを返します。ELContextオブジェクトのpropertyResolvedプロパティは、スコープ属性が一致する場合に戻る前に、このリゾルバーによってtrueに設定されている必要があります。このメソッドが呼び出された後にこのプロパティがtrueでない場合、呼び出し元は戻り値を無視する必要があります。- 次で指定:
- クラス
ELResolverのgetValue - パラメーター:
context- この評価のコンテキスト。base-nullのみがこのリゾルバーによって処理されます。他の値はすぐに戻ります。property- 解決するスコープ属性の名前。- 戻り値:
ELContextのpropertyResolvedプロパティがtrueに設定されている場合、スコープ属性。それ以外の場合は未定義です。- 例外:
NullPointerExceptionSE- コンテキストがnullの場合ELException- プロパティまたは変数の解決の実行中に例外がスローされた場合。スローされた例外は、可能であれば、この例外の原因プロパティとして含める必要があります。
getType
public ClassSE<ObjectSE> getType(ELContext context, ObjectSE base, ObjectSE property)
ベースオブジェクトがnullの場合、Object.classを返し、スコープ属性に設定するのに任意の型が有効であることを示します。ベースが
nullの場合に戻る前に、ELContextオブジェクトのpropertyResolvedプロパティをこのリゾルバーによってtrueに設定する必要があります。このメソッドが呼び出された後、このプロパティがtrueでない場合、呼び出し元は戻り値を無視する必要があります。- 次で指定:
- クラス
ELResolverのgetType - パラメーター:
context- この評価のコンテキスト。base-nullのみがこのリゾルバーによって処理されます。他の値はすぐに戻ります。property- 解決するスコープ属性の名前。- 戻り値:
ELContextのpropertyResolvedプロパティがtrueに設定されている場合、Object.classです。それ以外は未定義。- 例外:
NullPointerExceptionSE- コンテキストがnullの場合ELException- プロパティまたは変数の解決の実行中に例外がスローされた場合。スローされた例外は、可能であれば、この例外の原因プロパティとして含める必要があります。
setValue
public void setValue(ELContext context, ObjectSE base, ObjectSE property, ObjectSE val)
ベースオブジェクトがnullの場合、既存のスコープ属性を新しい値に設定するか、この名前で存在しない場合は新しいスコープ属性を作成します。指定された属性名がページスコープ、リクエストスコープ、セッションスコープ、アプリケーションスコープの属性のキーと一致する場合、対応する属性値は指定された値に置き換えられます。それ以外の場合は、指定された名前と値で新しいページスコープ属性が作成されます。
ベースが
nullの場合に戻る前に、ELContextオブジェクトのpropertyResolvedプロパティをこのリゾルバーによってtrueに設定する必要があります。このメソッドが呼び出された後、このプロパティがtrueでない場合、呼び出し元は戻り値を無視する必要があります。- 次で指定:
- クラス
ELResolverのsetValue - パラメーター:
context- この評価のコンテキスト。base-nullのみがこのリゾルバーによって処理されます。他の値はすぐに戻ります。property- 設定するスコープ属性の名前。val- スコープ属性の値。- 例外:
NullPointerExceptionSE- コンテキストがnullの場合。ELException- プロパティまたは変数の解決の実行中に例外がスローされた場合。スローされた例外は、可能であれば、この例外の原因プロパティとして含める必要があります。
isReadOnly
public boolean isReadOnly(ELContext context, ObjectSE base, ObjectSE property)
ベースオブジェクトがnullの場合、falseを返し、スコープ属性が読み取り専用にならないことを示します。ベースが
nullの場合に戻る前に、ELContextオブジェクトのpropertyResolvedプロパティをこのリゾルバーによってtrueに設定する必要があります。このメソッドが呼び出された後、このプロパティがtrueでない場合、呼び出し元は戻り値を無視する必要があります。- 次で指定:
- クラス
ELResolverのisReadOnly - パラメーター:
context- この評価のコンテキスト。base-nullのみがこのリゾルバーによって処理されます。他の値はすぐに戻ります。property- スコープ属性の名前。- 戻り値:
ELContextのpropertyResolvedプロパティがtrueに設定されている場合、falseです。それ以外は未定義。- 例外:
NullPointerExceptionSE- コンテキストがnullの場合。ELException- プロパティまたは変数の解決の実行中に例外がスローされた場合。スローされた例外は、可能であれば、この例外の原因プロパティとして含める必要があります。
getFeatureDescriptors
@DeprecatedSE(forRemoval=true, since="JSP 3.1") public IteratorSE<FeatureDescriptorSE> getFeatureDescriptors(ELContext context, ObjectSE base)
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。このメソッドは EL 5.0 で非推奨となり、EL 6.0 (Jakarta EE 11) で削除される予定です。JSP 4.0 では削除されます。ベースオブジェクトがnullの場合、このリゾルバーによって解決された各スコープ属性に関する情報を含むFeatureDescriptorオブジェクトを含むIteratorを返します。それ以外の場合は、nullを返します。返される
Iteratorには、任意のスコープで見つかったスコープ属性ごとにFeatureDescriptorSE のインスタンスが 1 つ含まれている必要があります。各 info オブジェクトには、単一のスコープ属性に関する情報が含まれており、次のように初期化されます。- displayName
- - スコープ属性の名前。
- 名前
- - displayName プロパティと同じです。
- shortDescription
- - スコープ属性の適切な説明。属性の現在のスコープ(ページ、リクエスト、セッション、アプリケーション)を含める必要があります。実装によって異なります。
- 専門家
- -
false - 隠された
- -
false - 優先
- -
true
FeatureDescriptorには、次の名前付き属性を設定する必要があります。ELResolver.TYPE- - スコープ属性の現在の実行時型。
ELResolver.RESOLVABLE_AT_DESIGN_TIME- -
true.
- オーバーライド:
- クラス
ELResolverのgetFeatureDescriptors - パラメーター:
context- この評価のコンテキスト。base- このリゾルバーによって処理されるのはnullのみです。他の値はnull戻り値になります。- 戻り値:
- スコープ属性ごとに 1 つの
FeatureDescriptorオブジェクトを含むIterator、またはbaseがnullでない場合はnull。 - 関連事項:
FeatureDescriptorSE
getCommonPropertyType
public ClassSE<StringSE> getCommonPropertyType(ELContext context, ObjectSE base)
ベースオブジェクトがnullの場合、String.classを返します。それ以外の場合は、nullを返します。- 次で指定:
- クラス
ELResolverのgetCommonPropertyType - パラメーター:
context- この評価のコンテキスト。base- このリゾルバーによって処理されるのはnullのみです。他の値はnull戻り値になります。- 戻り値:
- ベースが
nullでない場合はnull; それ以外の場合はString.class。