クラス BeanNameELResolver
ユーザーまたはコンテナー管理 Bean を解決するための ELResolver。
BeanNameResolver は、適切に動作するために必要です。次の例では、"Bean" という名前を MyBean のインスタンスに解決する ELResolver を作成します。
ELResovler elr = new BeanNameELResolver(new BeanNameResolver {
public boolean isNameResolved(String beanName) {
return "bean".equals(beanName);
}
public Object getBean(String beanName) {
return "bean".equals(beanName)? new MyBean(): null;
}
});
- 導入:
- Jakarta Expression Language 3.0
コンストラクター概要
コンストラクター方法の概要
修飾子と型メソッド説明ClassSE<?>getCommonPropertyType(ELContext context, ObjectSE base) Bean 名は文字列であるため、常にString.classを返します。ClassSE<?>ベースが null で、プロパティが BeanNameResolver で解決可能な名前である場合は、Bean の型を返します。ベースオブジェクトがnullであり、プロパティが BeanNameResolver によって解決可能な名前である場合、BeanNameResolver によって解決された値を返します。booleanisReadOnly(ELContext context, ObjectSE base, ObjectSE property) ベースが null で、プロパティが BeanNameResolver によって解決可能な名前である場合、Bean が書き込み可能かどうかを判別しようとします。voidベースが null で、プロパティが BeanNameResolver によって解決可能な名前である場合、BeanNameResolver の Bean は指定された値に設定されます。クラス jakarta.el.ELResolver から継承されたメソッド
convertToType, invoke
コンストラクターの詳細
BeanNameELResolver
コンストラクター- パラメーター:
beanNameResolver- Bean 名を解決するBeanNameResolver。
方法の詳細
getValue
ベースオブジェクトがnullであり、プロパティが BeanNameResolver によって解決可能な名前である場合、BeanNameResolver によって解決された値を返します。名前が BeanNameResolver によって解決される場合、
ELContextオブジェクトのpropertyResolvedプロパティは、戻る前に、このリゾルバーによってtrueに設定される必要があります。このメソッドが呼び出された後、このプロパティがtrueでない場合、呼び出し元は戻り値を無視する必要があります。- 次で指定:
- クラス
ELResolverのgetValue - パラメーター:
context- この評価のコンテキスト。base-nullproperty- Bean の名前。- 戻り値:
ELContextのpropertyResolvedプロパティがtrueに設定されている場合、指定された名前の Bean の値。それ以外の場合は未定義です。- 例外:
NullPointerExceptionSE- コンテキストがnullの場合。ELException- プロパティまたは変数の解決の実行中に例外がスローされた場合。スローされた例外は、可能であれば、この例外の原因プロパティとして含める必要があります。
setValue
ベースが null で、プロパティが BeanNameResolver によって解決可能な名前である場合、BeanNameResolver の Bean は指定された値に設定されます。名前が BeanNameResolver によって解決可能である場合、または BeanNameResolver が新しい Bean の作成を許可する場合、
ELContextオブジェクトのpropertyResolvedプロパティは、戻る前にリゾルバーによってtrueに設定される必要があります。このメソッドが呼び出された後、このプロパティがtrueでない場合、呼び出し元は値が設定されていないと安全に想定できます。- 次で指定:
- クラス
ELResolverのsetValue - パラメーター:
context- この評価のコンテキスト。base-nullproperty- Bean の名前value- 指定された名前の Bean を設定する値。- 例外:
NullPointerExceptionSE- コンテキストがnullの場合PropertyNotWritableException- BeanNameResolver で Bean の変更が許可されていない場合。ELException- 指定された名前で Bean を設定しようとしたときに例外がスローされた場合。スローされた例外は、可能な場合、この例外の原因プロパティとして含める必要があります。
getType
ベースが null で、プロパティが BeanNameResolver で解決可能な名前である場合は、Bean の型を返します。名前が BeanNameResolver によって解決可能である場合、
ELContextオブジェクトのpropertyResolvedプロパティは、戻る前に、リゾルバーによってtrueに設定される必要があります。このメソッドが呼び出された後、このプロパティがtrueでない場合、呼び出し元は値が設定されていないと安全に想定できます。- 次で指定:
- クラス
ELResolverのgetType - パラメーター:
context- この評価のコンテキスト。base-nullproperty- Bean の名前。- 戻り値:
ELContextのpropertyResolvedプロパティがtrueに設定され、関連付けられた BeanNameResolver が読み取り専用でない場合、指定された名前の Bean の型。指定された Bean 名が解決されましたが、関連付けられた BeanNameResolver が読み取り専用の場合、null。それ以外の場合は未定義。- 例外:
NullPointerExceptionSE- コンテキストがnullの場合。ELException- プロパティまたは変数の解決の実行中に例外がスローされた場合。スローされた例外は、可能であれば、この例外の原因プロパティとして含める必要があります。
isReadOnly
ベースが null で、プロパティが BeanNameResolver によって解決可能な名前である場合、Bean が書き込み可能かどうかを判別しようとします。名前が BeanNameResolver によって解決可能である場合、
ELContextオブジェクトのpropertyResolvedプロパティは、戻る前に、リゾルバーによってtrueに設定される必要があります。このメソッドが呼び出された後、このプロパティがtrueでない場合、呼び出し元は値が設定されていないと安全に想定できます。- 次で指定:
- クラス
ELResolverのisReadOnly - パラメーター:
context- この評価のコンテキスト。base-nullproperty- Bean の名前。- 戻り値:
ELContextのpropertyResolvedプロパティがtrueに設定されている場合、プロパティが読み取り専用の場合はtrue、そうでない場合はfalse。それ以外は未定義。- 例外:
NullPointerExceptionSE- コンテキストがnullの場合。ELException- プロパティまたは変数の解決の実行中に例外がスローされた場合。スローされた例外は、可能であれば、この例外の原因プロパティとして含める必要があります。
getCommonPropertyType
Bean 名は文字列であるため、常にString.classを返します。- 次で指定:
- クラス
ELResolverのgetCommonPropertyType - パラメーター:
context- この評価のコンテキスト。base-null.- 戻り値:
String.class.