![[17.0.0.4 and later]](../ng_v17004plus.gif)
Liberty での JavaServer Faces 2.2 の構成
Liberty に JavaServer Faces (JSF) 2.2 フィーチャーを構成することができます。このフィーチャーは、JSF 2.2 仕様の完全なサポートを提供します。
このタスクについて
Liberty JSF 実装は、MyFaces オープン・ソース実装に基づきます。JSF 2.2 に対応したアプリケーションを実行できるように Liberty サーバーを構成するには、<jsf-2.2> フィーチャーを設定する必要があります。
手順
server.xml ファイルを更新して、<jsf-2.2> フィーチャーを追加します。 以下に例を示します。
<featureManager>
<feature>jsf-2.2</feature>
</featureManager>
重要:
JavaServer Faces 2.2 を使用するときには、以下の点を考慮してください。
- JSF 2.2 フィーチャーは、JSF 2.0 フィーチャーがするような Bean 検証フィーチャーの暗黙的なロードは行いません。アプリケーションを JSF 2.0 から JSF 2.2 にマイグレーションし、かつ、アプリケーションが Bean 検証を使用する場合は、 beanValidation-1.1 フィーチャーも有効にする必要があります。
- JSF 2.2 フィーチャーは、servlet-3.1 フィーチャー、jsp-2.3 フィーチャー、 および el-3.0 フィーチャーを必要とします。server.xml ファイル内で JSF 2.2 フィーチャーを有効にする場合、 これらのフィーチャーも有効になります。
- JSF 2.2 フィーチャーを Java EE 6 フィーチャー (servlet-3.0、jsp-2.2、cdi-1.0 など) と一緒に実行することはできません。
- サーバー・インスタンスごとに、JSF 2.0 フィーチャーか JSF 2.2 フィーチャーかの実装を選択できますが、動作変更を考慮する必要があります。 必要な動作が JSF 2.2 フィーチャーのみに含まれている場合は、JSF 2.2 フィーチャーを使用する必要があります。JSF 2.2 フィーチャーにおける動作変更が既存のアプリケーションに悪影響を与える可能性がある場合は、 そのアプリケーション用の既存の動作を保持するために JSF 2.0 フィーチャーを使用してください。
- 同じ Liberty サーバーで JSF 2.0 と JSF 2.2 の両フィーチャーを使用することはできません。両方のフィーチャーが構成されると、エラーが生成されます。
CWWKF0033E: singleton フィーチャー jsf-2.0 と jsf-2.2 は、同時にロードできません。構成済みフィーチャー jsf-2.0 と jsf-2.2 には、競合の原因となるフィーチャーが 1 つ以上組み込まれています。ご使用の構成はサポートされていません。server.xml を更新して、両立しないフィーチャーを削除してください。
- JSF 2.2 は前のリリース (JSF 2.1、JSF 2.0 など) と互換性がありますが、以下の例外を考慮してください。
- 前のリリースの JSF 仕様では誤りがあったため例外が消えてしまっていましたが、現在は例外ハンドラーに伝搬されるようになりました。JSF 2.2 仕様の概要セクションで以前のバージョンとの後方互換性についての説明を参照してください。
- Composite Component Attribute ELResolver および Composite Computer Metadata の仕様に変更が加えられました。JSF 2.2 仕様の概要セクションで以前のバージョンとの後方互換性についての説明を参照してください。
タスクの結果
次のタスク
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd" bean-discovery-mode="all">
</beans>