[17.0.0.4 and later]

サード・パーティー JavaServer Faces 2.2 実装の構成

JavaServer Faces (JSF) Container 2.2 フィーチャーを使用して、Contexts and Dependency Injection (CDI) 統合が、アプリケーション内にバンドルされた JSF プロバイダーと連携して機能することを可能にします。

始める前に

このフィーチャーは、組み込み Liberty JSF プロバイダーとは異なる JSF プロバイダーを使用する場合のみ使用してください。Liberty のデフォルト JSF プロバイダーを使用する場合は、代わりに jsf-2.2 フィーチャーを使用してください。

このタスクについて

任意の 2.2.X バージョンの MyFaces または Mojarra JSF 実装をアプリケーション内でパッケージし、Liberty CDI 統合も使用するには、Liberty JSF コンテナーを使用します。JSF 2.2 を使用してアプリケーションを実行するように Liberty サーバーを構成するには、jsfContainer-2.2 フィーチャーを有効にし、JSF API および実装をアプリケーション内でパッケージする必要があります。

重要:
  • jsfContainer-2.2 フィーチャーを、jsf-2.2 など、他のフィーチャーと一緒に使用することはできません。
  • JSF コンテナーを使用するには、JSF API javax.faces クラスおよび JSF 実装をアプリケーション内でパッケージします。JSF API および実装を共有ライブラリー内でパッケージすることは本プログラムではサポートされていません。
  • jsfContainer-2.2 フィーチャーは、2.2 バージョンの JSF 仕様に対応する JSF API および実装に対してのみサポートされています。JSF API および実装の MANIFEST.MF では、バージョン範囲 [2.2,2.3]Specification-Version が定義されている必要があります。
  • jsfContainer-2.2 が有効になった JSF @ManagedBeans に対して、本プログラムは、@Resource Bean または @EJB Bean によるオブジェクトの注入をサポートしていません。 代わりに CDI @Named Bean を使用してください。

手順

  1. server.xml ファイルを更新して、jsfContainer-2.2 フィーチャーを有効にします。以下に例を示します。
    <featureManager>
    	<feature>jsfContainer-2.2</feature>
    </featureManager>
  2. 使用したい JSF API および JSF プロバイダー実装をアプリケーション内でパッケージします。例えば、Mojarra で JSF コンテナーを使用する .war (Web アーカイブ) アプリケーションは、次の例のように表示されます。
    /WEB-INF/lib/jsf-api-2.2.14.jar
    /WEB-INF/lib/jsf-impl-2.2.14.jar

    代替方法として、アプリケーションは、アプリケーション内の以下の場所で Apache MyFaces をパッケージできます。

    /WEB-INF/lib/commons-beanutils-1.8.3.jar    # dependency of myfaces
    /WEB-INF/lib/commons-collections-3.2.1.jar  # dependency of myfaces
    /WEB-INF/lib/commons-digester-1.8.jar       # dependency of myfaces
    /WEB-INF/lib/commons-logging-1.1.3.jar      # dependency of myfaces
    /WEB-INF/lib/persistence-2.1.jar            # dependency of myfaces when using @EJB
    /WEB-INF/lib/myfaces-api-2.2.12.jar
    /WEB-INF/lib/myfaces-impl-2.2.12.jar

タスクの結果

JSF Container 2.2 フィーチャーが有効になり、実行時に Liberty サーバーにロードされます。このフィーチャーは、アプリケーション内にパッケージされた JSF API および実装を使用します。

トピックのタイプを示すアイコン タスク・トピック

ファイル名: twlp_jsf22_implementations.html