7 Oracle WebLogic Serverでの永続性プロバイダの構成
この章の内容は次のとおりです:
Oracle TopLinkの概要
Oracle TopLinkは、WebLogic Server 12c以降のデフォルトの永続性プロバイダです。これは、包括的な標準ベースのオブジェクト永続性およびオブジェクト変換フレームワークであり、アプリケーションの永続性レイヤーに関するAPI、スキーマ、ランタイム・サービスを提供します。
TopLinkのコア・コンポーネントは、EclipseLinkプロジェクトで作成されたライブラリとユーティリティで構成されています。EclipseLinkとは、TopLinkで提供される開発フレームワークおよびランタイムのオープン・ソース実装です。EclipseLinkでは、次の仕様に加えて付加価値機能を実装します。
-
Jakarta Persistence 2.2 (JPA 2.2)。
JPA 2.2には、Criteria Bulk Update/Delete、ストアド・プロシージャ、JPQL汎用関数、インジェクション可能なエンティティ・リスナー、
TREAT
、コンバータ、DDL生成およびエンティティ・グラフなどの機能に対する新しいサポートまたは拡張が含まれます。JPA 2.2の完全な仕様は、https://jakarta.ee/specifications/persistence/2.2/
を参照してください。 -
Java Architecture for XML Binding (JAXB) 2.2(EclipseLink JAXB実装、およびEclipseLink拡張機能は、MOXyと呼ばれています。)
JAXB 2.0仕様については、「JSR-000222 Java Architecture for XML Binding (JAXB) 2.0」(
http://jcp.org/aboutJava/communityprocess/pfd/jsr222/index.html
)を参照してください。 -
EclipseLinkには、Database Web Service (DBWS)も含まれます。これは、Java API for XML Web Services (JAX-WS) 2 Webサービスを使用することで、リレーショナル・データベース・アーティファクトへのアクセスを提供します。
EclipseLinkは、Oracle SpatialおよびOracle XDBのマッピング機能もサポートします。
サポートされるその他のサービスを含め、EclipseLinkに関する詳細は、EclipseLinkプロジェクト・ホーム(http://wiki.eclipse.org/EclipseLink
)およびEclipseLink/Documentation Center(http://wiki.eclipse.org/EclipseLink/UserGuide
)を参照してください。
すべてのEclipseLinkに加えて、Oracle TopLinkには次が含まれます。
-
TopLink Grid。EclipseLinkでOracle Coherenceをレベル2 (L2)キャッシュおよびエンティティの永続性レイヤーとして使用するためのEclipseLink JPAとOracle Coherenceとの統合です。『Oracle Coherenceでのアプリケーションの開発』を参照してください。
ノート:
Oracle CoherenceでTopLink Gridを使用するためのライセンスが必要です。
-
WebLogic Serverとのロギングの統合。
-
WebLogic ServerでのMBeanのサポート。
Oracle TopLinkアプリケーションの開発、デプロイメント、および構成の詳細は、次を参照してください。
ノート:
前述のドキュメントはOracle TopLink 12.1.3用ですが、現在のバージョンのWebLogic Serverにも適用されます。
次のEclipseLinkの資料も参照してください。
-
EclipseLink Documentation Center (
http://www.eclipse.org/eclipselink/documentation/
) -
EclipseLinkサンプル(
http://wiki.eclipse.org/EclipseLink/Examples
)
永続性プロバイダの指定
次の項で説明するように、アプリケーション・コードの永続性ユニットで使用する永続性プロバイダを指定するか、あるいはWebLogic Serverドメインのデフォルト永続性プロバイダを受け入れることができます。
ドメインのデフォルト・プロバイダの設定
他に何も指定していないと、WebLogic Serverドメインのデフォルト永続性プロバイダとしてTopLinkが使用されます。デフォルト・プロバイダは、別の永続性プロバイダを使用するように構成されていないアプリケーションの任意のエンティティで使用されます。デフォルト・プロバイダは、注入されたエンティティ・マネージャおよびファクトりでもアプリケーション管理のエンティティ・マネージャおよびファクトリでも使用されます。
デフォルト・プロバイダは、WebLogicリモート・コンソールで設定することも、直接JPAMBean.DefaultJPAProvider
で設定することもできます。
ノート:
Oracle Kodo JPA/JDOは、このリリースのWebLogic Serverでサポートされなくなりました。JPA 2.1をサポートするOracle TopLinkを使用することをお薦めします。Kodoでは、JPA 1.0のみをサポートします。
デフォルト・プロバイダを変更する場合、JPAプロバイダを指定しない任意のデプロイされたアプリケーションに対して次を実行する必要があります。
-
アプリケーション管理によるエンティティ・マネージャ・ファクトリを使用するアプリケーションを再起動します。
-
注入されたエンティティ・マネージャ・ファクトリまたはエンティティ・マネーシャを使用するアプリケーションを再デプロイします。
親トピック: 永続性プロバイダの指定
アプリケーションでの永続性プロバイダの指定
アプリケーションで指定された永続性プロバイダは、WebLogic Serverドメインに設定されたデフォルト・プロバイダより優先されます。
使用するプロバイダは、次のようにして設定できます。
-
persistence.xml
ファイル内の永続性ユニットの<provider>
要素でプロバイダを指定します。たとえば:<persistence-unit name="example"> <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> ... </persistence-unit>
-
javax.persistence.Persistence.createEntityManagerFactory(String, Map)
メソッドのMap
パラメータに渡すjavax.persistence.provider
プロパティでプロバイダを指定します。
親トピック: 永続性プロバイダの指定