クラス StaticFieldELResolver
ELResolver。また、コンストラクター呼び出しを特別なケースとして処理します。 リゾルバーは、通常 Jakarta Expression Language 実装によって生成される型 ELClass の基本オブジェクトを処理します。
- 導入:
- Jakarta Expression Language 3.0
- 関連事項:
コンストラクターの概要
コンストラクター方法の概要
修飾子と型メソッド説明ClassSE<?>getCommonPropertyType(ELContext context, ObjectSE base) プロパティの型を返します。ClassSE<?>静的フィールドの型を返します。静的フィールドの値を返します。invoke(ELContext context, ObjectSE base, ObjectSE methodName, ClassSE<?>[] paramTypes, ObjectSE[] params) public static メソッドまたはクラスのコンストラクターを呼び出します。booleanisReadOnly(ELContext context, ObjectSE base, ObjectSE property) 静的フィールドが書き込み可能かどうかを問い合わせます。void静的フィールドへの書き込みを試みます。クラス jakarta.el.ELResolver から継承されたメソッド
convertToType
コンストラクターの詳細
StaticFieldELResolver
public StaticFieldELResolver()
メソッドの詳細
getValue
静的フィールドの値を返します。
ベースオブジェクトが
プロパティがELClassのインスタンスであり、プロパティが String の場合、戻る前に、このリゾルバーによってELContextオブジェクトのpropertyResolvedプロパティをtrueに設定する必要があります。このメソッドが呼び出された後、このプロパティがtrueでない場合、呼び出し元は戻り値を無視する必要があります。ELClassで指定されたクラスのパブリック静的フィールドである場合、静的フィールドの値を返します。Enum 定数は、Enum オブジェクトの静的なパブリックフィールドであり、この特殊なケースです。- 次で指定:
- クラス
ELResolverのgetValue - パラメーター:
context- この評価のコンテキスト。base-ELClass。property- 静的フィールド名。- 戻り値:
ELContextのpropertyResolvedプロパティがtrueに設定されている場合、静的フィールドの値。- 例外:
NullPointerExceptionSE- コンテキストがnullの場合。PropertyNotFoundException- 指定されたクラスが存在しない場合、フィールドがクラスのパブリック静的フィールドでない場合、またはフィールドにアクセスできない場合。
setValue
静的フィールドへの書き込みを試みます。
ベースオブジェクトが
ELClassのインスタンスであり、プロパティが String の場合、静的フィールドへの書き込みが許可されていないため、PropertyNotWritableExceptionが常にスローされます。- 次で指定:
- クラス
ELResolverのsetValue - パラメーター:
context- この評価のコンテキスト。base-ELClassproperty- フィールドの名前value- クラスのフィールドに設定する値。- 例外:
NullPointerExceptionSE- コンテキストがnullの場合PropertyNotWritableException-ELClassのベースオブジェクトインスタンスと String のpropertyインスタンスの場合
invoke
public ObjectSE invoke(ELContext context, ObjectSE base, ObjectSE methodName, ClassSE<?>[] paramTypes, ObjectSE[] params) public static メソッドまたはクラスのコンストラクターを呼び出します。ベースオブジェクトが
ELClassのインスタンスであり、メソッドが String である場合、戻る前に、リゾルバーによってELContextオブジェクトのpropertyResolvedプロパティをtrueに設定する必要があります。このメソッドが呼び出された後、このプロパティがtrueでない場合、呼び出し元は戻り値を無視する必要があります。methodで指定された静的な public メソッドを呼び出します。メソッドの選択に関係するプロセスは、
BeanELResolverで使用されるプロセスと同じです。特殊なケースとして、メソッドの名前が "<init>" の場合、クラスのコンストラクターが呼び出されます。
- オーバーライド:
- クラス
ELResolverのinvoke - パラメーター:
base-ELClassmethodName-Stringに強制変換される場合、メソッドの単純な名前。paramTypes- メソッドの仮パラメーター型を宣言された順序で識別する Class オブジェクトの配列。メソッドにパラメーターがない場合は、空の配列を使用します。nullにすることができます。その場合、メソッドの仮パラメーターの型は不明であると見なされます。params- メソッドに渡すパラメーター。パラメーターがない場合はnull。context- この評価のコンテキスト。- 戻り値:
- メソッド呼び出しの結果(メソッドに
void戻り値の型がある場合はnull)。 - 例外:
MethodNotFoundException- 適切な方法が見つからない場合。ELException- (ベース、メソッド)解決の実行中に例外がスローされた場合スローされた例外は、可能であれば、この例外の原因プロパティとして含める必要があります。スローされた例外がInvocationTargetExceptionの場合、そのcauseを抽出し、それをELExceptionコンストラクターに渡します。
getType
静的フィールドの型を返します。ベースオブジェクトが
ELClassのインスタンスであり、プロパティが文字列である場合、ELContextオブジェクトのpropertyResolvedプロパティは、戻る前にリゾルバーによってtrueに設定される必要があります。このメソッドが呼び出された後、このプロパティがtrueでない場合、呼び出し元は値が設定されていないと安全に想定できます。- 次で指定:
- クラス
ELResolverのgetType - パラメーター:
context- この評価のコンテキスト。base-ELClass。property- フィールドの名前- 戻り値:
ELContextのpropertyResolvedプロパティがtrueに設定されている場合、nullです。それ以外は未定義。- 例外:
NullPointerExceptionSE- コンテキストがnullの場合。PropertyNotFoundException- フィールドがクラスのパブリック静的フィールドでない場合、またはフィールドにアクセスできない場合。
isReadOnly
静的フィールドが書き込み可能かどうかを問い合わせます。
ベースオブジェクトが
ELClassのインスタンスであり、プロパティが文字列である場合、ELContextオブジェクトのpropertyResolvedプロパティは、戻る前にリゾルバーによってtrueに設定される必要があります。このメソッドが呼び出された後、このプロパティがtrueでない場合、呼び出し元は値が設定されていないと安全に想定できます。静的フィールドへの書き込みは許可されていないため、常に
trueを返します。- 次で指定:
- クラス
ELResolverのisReadOnly - パラメーター:
context- この評価のコンテキスト。base-ELClass。property- Bean の名前。- 戻り値:
true- 例外:
NullPointerExceptionSE- コンテキストがnullの場合。
getCommonPropertyType
プロパティの型を返します。フィールド名は文字列であるため、常にString.classを返します。- 次で指定:
- クラス
ELResolverのgetCommonPropertyType - パラメーター:
context- この評価のコンテキスト。base-ELClass。- 戻り値:
String.class.