クラス 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 によって解決された値を返します。boolean
isReadOnly
(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
-null
property
- Bean の名前。- 戻り値:
ELContext
のpropertyResolved
プロパティがtrue
に設定されている場合、指定された名前の Bean の値。それ以外の場合は未定義です。- 例外:
NullPointerExceptionSE
- コンテキストがnull
の場合。ELException
- プロパティまたは変数の解決の実行中に例外がスローされた場合。スローされた例外は、可能であれば、この例外の原因プロパティとして含める必要があります。
setValue
ベースが null で、プロパティが BeanNameResolver によって解決可能な名前である場合、BeanNameResolver の Bean は指定された値に設定されます。名前が BeanNameResolver によって解決可能である場合、または BeanNameResolver が新しい Bean の作成を許可する場合、
ELContext
オブジェクトのpropertyResolved
プロパティは、戻る前にリゾルバーによってtrue
に設定される必要があります。このメソッドが呼び出された後、このプロパティがtrue
でない場合、呼び出し元は値が設定されていないと安全に想定できます。- 次で指定:
- クラス
ELResolver
のsetValue
- パラメーター:
context
- この評価のコンテキスト。base
-null
property
- Bean の名前value
- 指定された名前の Bean を設定する値。- 例外:
NullPointerExceptionSE
- コンテキストがnull
の場合PropertyNotWritableException
- BeanNameResolver で Bean の変更が許可されていない場合。ELException
- 指定された名前で Bean を設定しようとしたときに例外がスローされた場合。スローされた例外は、可能な場合、この例外の原因プロパティとして含める必要があります。
getType
ベースが null で、プロパティが BeanNameResolver で解決可能な名前である場合は、Bean の型を返します。名前が BeanNameResolver によって解決可能である場合、
ELContext
オブジェクトのpropertyResolved
プロパティは、戻る前に、リゾルバーによってtrue
に設定される必要があります。このメソッドが呼び出された後、このプロパティがtrue
でない場合、呼び出し元は値が設定されていないと安全に想定できます。- 次で指定:
- クラス
ELResolver
のgetType
- パラメーター:
context
- この評価のコンテキスト。base
-null
property
- 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
-null
property
- Bean の名前。- 戻り値:
ELContext
のpropertyResolved
プロパティがtrue
に設定されている場合、プロパティが読み取り専用の場合はtrue
、そうでない場合はfalse
。それ以外は未定義。- 例外:
NullPointerExceptionSE
- コンテキストがnull
の場合。ELException
- プロパティまたは変数の解決の実行中に例外がスローされた場合。スローされた例外は、可能であれば、この例外の原因プロパティとして含める必要があります。
getCommonPropertyType
Bean 名は文字列であるため、常にString.class
を返します。- 次で指定:
- クラス
ELResolver
のgetCommonPropertyType
- パラメーター:
context
- この評価のコンテキスト。base
-null
.- 戻り値:
String.class
.