クラス MetaRule


  • public abstract class MetaRule
    extends ObjectSE

    Facelets VDL ページのマークアップ要素の属性を、その要素に関連付けられた Jakarta Faces API オブジェクトインスタンスに関連付ける方法を指示する抽象化のルートクラス。このインターフェースの単一のメソッド applyRule(java.lang.String, jakarta.faces.view.facelets.TagAttribute, jakarta.faces.view.facelets.MetadataTarget) は、属性とその値を処理する作業を実際に行う動作のカプセル化を返します。Facelets VDL ページに表示されるすべての基本的な種類の要素(コンポーネント、非コンポーネント、アタッチされたオブジェクト)に対して、このクラスの特定の具象サブクラスの実装があります。

    例: このマークアップを検討してください:

     <h:inputText value="#{user.userid}"
     valueChangeListener="#{user.newUserId}" />
     

    この例には、2 つの MetaRule インスタンスが含まれています。

    1. 1 つ目は、applyMetada() メソッドが呼び出されたときに、"value" 属性がどのように処理されるかを指示する Metadata インスタンスを返す applyRule() メソッドを持ちます: <h:inputText> 要素に関連付けられた UIComponent インスタンス上で UIComponent.setValueExpression(java.lang.String, jakarta.el.ValueExpression) を呼び出します。

    2. 2 番目には、Metadata インスタンスを返す applyRule() メソッドがあり、その applyMetadata() メソッドが呼び出されると、"valueChangeListener" 属性の処理方法(EditableValueHolder.addValueChangeListener(jakarta.faces.event.ValueChangeListener) の呼び出し)が決まります。

    導入:
    2.0
    • コンストラクターの詳細

      • MetaRule

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

      • applyRule

        public abstract Metadata applyRule​(StringSE name,
                                           TagAttribute attribute,
                                           MetadataTarget meta)

        MetaRule のこの特定の具象サブクラスのコンテキストで、引数 name で表される種類のルールが与えられた場合に適切なアクションを実行する抽象化を返します。抽象化は、引数 attribute からの値をカプセル化する必要があります。

        パラメーター:
        name - このルールの名前。これは通常、VDL のタグ属性の名前になります。
        attribute - ページ内の要素のこの特定のインスタンスにおけるこの属性の名前と値のペア。
        meta - 返される抽象化内にカプセル化するアクションの種類を識別するために使用できる MetadataTarged
        戻り値:
        Metadata
        導入:
        2.0