パッケージ jakarta.faces.render

アノテーションインターフェース FacesRenderer


@RetentionSE(RUNTIMESE) @TargetSE(TYPESE) @InheritedSE public @interface FacesRenderer

クラスにこのアノテーションが存在すると、そのクラスがランタイムに Renderer として自動的に登録されます。renderKitId() 属性の値は、この Renderer のインスタンスが追加される render-kit-id と見なされます。このアノテーションが表示されるクラスには、引数なしの public コンストラクターが必要です。そのようなコンストラクターが存在しない場合、実装は致命的なエラーを示す必要があり、アプリケーションをサービスに配置してはなりません。その RenderKit のうち、rendererType() 属性の値を renderer-typecomponentFamily() 属性の値を component-family とします。実装は、Jakarta Faces Specification Document のセクション 11.4「アプリケーション構成リソース内のエントリに対応し、そのエントリに取って代わる可能性があるアノテーション」のアルゴリズムで見つかった FacesRenderer でアノテーションが付けられた各クラスに対して、次のアクションが実行されることを保証する必要があります。

  • このアプリケーションの RenderKitFactory への参照を取得します。

  • render-kit-id の RenderKit が存在するかどうかを確認します。存在する場合、そのインスタンスを renderKit として議論します。存在しない場合、そのような RenderKit が存在しないと実装で致命的なエラーを示す必要があり、アプリケーションをサービスに投入してはなりません。

  • パブリックゼロ引数コンストラクターを使用して、このクラスのインスタンスを作成します。

  • renderKitRenderKit.addRenderer(java.lang.String, java.lang.String, jakarta.faces.render.Renderer) を呼び出し、最初の引数として component-family を、2 番目の引数として renderer-type を、3 番目の引数として新しくインスタンス化された RenderKit インスタンスを渡します。

  • 要素の詳細

    • renderKitId

      StringSE renderKitId

      このアノテーション属性の値は、Renderer のこのクラスのインスタンスをインストールする必要がある render-kit-id と見なされます。

      戻り値:
      render-kit-id
      デフォルト:
      "HTML_BASIC"