
![[8.5.5.6 以降]](../ng_v8556.gif)
Contexts and Dependency Injection 1.2 の概要
Liberty プロファイルは、Liberty フィーチャー cdi-1.0 および cdi-1.2 を使用して、アプリケーションでのコンテキストおよび依存関係注入のためのサポートを提供します。
この Contexts and Dependency Injection (CDI) 1.2 フィーチャーは、CDI 1.2 仕様の完全なサポートを提供します。CDI 1.2 機能の完全な説明は、CDI 1.2 仕様に記載されています。「Contexts and Dependency Injection for the Java™ EE platform」を参照してください。
CDI 1.2 フィーチャーで提供されているサービス・セットには、ライフサイクル・コンテキストにバインドされているステートフル・オブジェクトについて適切に定義されたライフサイクル、およびタイプ・セーフな依存関係注入メカニズムが含まれています。
JavaServer Faces アプリケーションでの Contexts and Dependency Injection 1.2 の使用
JavaServer Faces (JSF) 2.2 フィーチャーとともに CDI 1.2 フィーチャーを使用して、JSF アプリケーションが、CDI 1.2 フィーチャーで提供される高度なコンテキストおよび依存関係注入モデルを利用できるようにすることが可能です。このサービスは、Unified Expression Language (EL) との統合を介して提供され、任意のコンテキスト・オブジェクトを JSF または JavaServer Pages (JSP) ページ内で直接使用できます。
Enterprise JavaBeans (EJB) での Contexts and Dependency Injection 1.2 の使用
Enterprise JavaBeans (EJB) 3.2 フィーチャーとともに CDI 1.2 フィーチャーを使用して、コンテキスト・ライフサイクル管理で EJB コンポーネント・モデルを強化できます。CDI 1.2 フィーチャーで提供されるサービスは、Java EE Web 層を Java EE エンタープライズ・サービスと統合します。特に、これにより、EJB コンポーネントを JSF 管理 Bean として使用できるようになるため、EJB と JSF のプログラミング・モデルが統合されます。
Servlet 3.1 での Contexts and Dependency Injection 1.2 の使用
Servlet 3.1 フィーチャーとともに CDI 1.2 フィーチャーを使用して、サーブレット・アプリケーションが CDI 1.2 フィーチャーによって提供されるサービスを最大限に活用できるようにすることが可能です。両方のフィーチャーを使用することで、フィールド、メソッド、またはコンストラクター注入を使用して、コンテキスト管理 Bean をサーブレット・アプリケーションに注入できます。CDI 1.2 フィーチャーは、サーブレット・リスナー、フィルター、およびインターセプターの自動登録も提供します。
Contexts and Dependency Injection 1.2 アプリケーションでの Java インターセプター
CDI 1.2 フィーチャーは、インターセプターの Javaモデルを拡張します。CDI 1.2 フィーチャーは、インターセプターを Bean に関連付けるための機能を提供します。インターセプターは、タイプ・セーフなインターセプター・バインディングを使用してバインドされます。CDI 1.2 フィーチャーと EJB 3.2 フィーチャーの両方が Liberty プロファイル・サーバーにロードされている場合、このモデルを EJB Bean に拡張できます。