パッケージ jakarta.el

クラス ResourceBundleELResolver

java.lang.ObjectSE
jakarta.el.ELResolver
jakarta.el.ResourceBundleELResolver

public class ResourceBundleELResolver extends ELResolver
ResourceBundleSE のインスタンスのプロパティ解決動作を定義します。

このリゾルバーは、型 java.util.ResourceBundle のベースオブジェクトを処理します。任意のオブジェクトをプロパティとして受け入れ、ResourceBundle.getObject(java.lang.String)SE を呼び出すために java.lang.String に強制します。

このリゾルバーは読み取り専用であり、setValue が呼び出されると PropertyNotWritableException をスローします。

ELResolverCompositeELResolver を使用して組み合わされ、式を評価するための豊富なセマンティクスを定義します。詳細については、ELResolver の javadoc を参照してください。

導入:
Jakarta Server Pages 2.1
関連事項:
  • コンストラクターの詳細

    • ResourceBundleELResolver

      public ResourceBundleELResolver()
  • メソッドの詳細

    • getValue

      public ObjectSE getValue(ELContext context, ObjectSE base, ObjectSE property)
      ベースオブジェクトが ResourceBundle のインスタンスである場合、提供されたプロパティは最初に String に強制変換されます。ベース ResourceBundle 上の getObject によって返される Object が返されます。

      ベースが ResourceBundle の場合、戻る前に、ELContext オブジェクトの propertyResolved プロパティをこのリゾルバーによって true に設定する必要があります。このメソッドが呼び出された後、このプロパティが true でない場合、呼び出し元は戻り値を無視する必要があります。

      次で指定:
      クラス ELResolvergetValue 
      パラメーター:
      context - この評価のコンテキスト。
      base - 分析する ResourceBundle。
      property - 分析するプロパティの名前。String に強制変換されます。
      戻り値:
      ELContext の propertyResolved プロパティが true に設定されている場合、プロパティが null の場合は null ; それ以外の場合は、ResourceBundle からの指定されたキー(String に強制変換されたプロパティ)の Object。指定されたキーのオブジェクトが見つからない場合は、String "???" + キー + "???"。
      例外:
      NullPointerExceptionSE - コンテキストが null の場合
      ELException - プロパティまたは変数の解決の実行中に例外がスローされた場合。スローされた例外は、可能であれば、この例外の原因プロパティとして含める必要があります。
    • getType

      public ClassSE<?> getType(ELContext context, ObjectSE base, ObjectSE property)
      ベースオブジェクトが ResourceBundle のインスタンスである場合、リゾルバーは読み取り専用であるため、null を返します。

      ベースが ResourceBundle の場合、戻る前に、ELContext オブジェクトの propertyResolved プロパティをこのリゾルバーによって true に設定する必要があります。このメソッドが呼び出された後、このプロパティが true でない場合、呼び出し元は戻り値を無視する必要があります。

      次で指定:
      クラス ELResolvergetType 
      パラメーター:
      context - この評価のコンテキスト。
      base - 分析する ResourceBundle。
      property - 分析するプロパティの名前。
      戻り値:
      ELContext の propertyResolved プロパティが true に設定されている場合、null です。それ以外は未定義。
      例外:
      NullPointerExceptionSE - コンテキストが null の場合
    • setValue

      public void setValue(ELContext context, ObjectSE base, ObjectSE property, ObjectSE value)
      ベースオブジェクトが ResourceBundle の場合、PropertyNotWritableException をスローします。
      次で指定:
      クラス ELResolversetValue 
      パラメーター:
      context - この評価のコンテキスト。
      base - 変更される ResourceBundle。型 ResourceBundle のベースのみが処理されます。
      property - 使用する String プロパティ。
      value - 設定する値。
      例外:
      NullPointerExceptionSE - コンテキストが null の場合。
      PropertyNotWritableException - base が ReasourceBundle のインスタンスである場合、常にスローされます。
    • isReadOnly

      public boolean isReadOnly(ELContext context, ObjectSE base, ObjectSE property)
      ベースオブジェクトが null でなく、instanceof ResourceBundleSE の場合は、true を返します。
      次で指定:
      クラス ELResolverisReadOnly 
      パラメーター:
      context - この評価のコンテキスト。
      base - 変更される ResourceBundle。型 ResourceBundle のベースのみが処理されます。
      property - 使用する String プロパティ。
      戻り値:
      ELContext の propertyResolved プロパティが true に設定されている場合、true です。それ以外は未定義。
      例外:
      NullPointerExceptionSE - コンテキストが null の場合
    • getCommonPropertyType

      public ClassSE<?> getCommonPropertyType(ELContext context, ObjectSE base)
      ベースオブジェクトが ResourceBundle の場合、このリゾルバーが property 引数に対して受け入れる最も一般的な型を返します。それ以外の場合は、null を返します。

      ベースが ResourceBundle であるとすると、このメソッドは常に String.class を返します。

      次で指定:
      クラス ELResolvergetCommonPropertyType 
      パラメーター:
      context - この評価のコンテキスト。
      base - 分析するバンドル。型 ResourceBundle のベースのみがこのリゾルバーによって処理されます。
      戻り値:
      ベースが ResourceBundle でない場合は null。それ以外の場合は String.class