Cosminexus V9 アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)

[目次][用語][索引][前へ][次へ]

5.3.1 使用できるJPAプロバイダ

JPAプロバイダとはEntityManagerの機能を提供するエンジンのことです。アプリケーションサーバで利用できるJPAプロバイダには,CJPAプロバイダとほかのベンダが提供するJPAプロバイダの2種類があります。それぞれのJPAプロバイダの利用について説明します。

<この項の構成>
(1) CJPAプロバイダを利用する場合
(2) ほかのベンダのJPAプロバイダを利用する場合

(1) CJPAプロバイダを利用する場合

アプリケーションサーバで提供しているJPAプロバイダです。CJPAプロバイダでは,JPA 1.0仕様に基づく機能のほかに,CJPAプロバイダ独自の機能も提供しています。CJPAプロバイダの概要,アプリケーション実装時の注意事項,およびCJPAプロバイダの使用方法については,「6. CJPAプロバイダ」を参照してください。

(2) ほかのベンダのJPAプロバイダを利用する場合

ほかのベンダで提供しているJPAプロバイダです。JPA仕様でJPAプロバイダとアプリケーションサーバの間のインタフェースが明確にされているため,アプリケーションサーバではほかのベンダが提供しているJPA 1.0仕様に準拠したJPAプロバイダを利用することもできます。

アプリケーションサーバからほかのベンダのJPAプロバイダを利用する場合は,次の設定が必要になります。

また,アプリケーションサーバで提供するJ2EEアプリケーション実行時間の監視機能を使用する場合は,JPAプロバイダのクラスおよびエンティティクラスを保護区リストに追加する必要があります。保護区リストへの追加方法については,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「2.6 criticalList.cfg(保護区リストファイル)」を参照してください。

参考
JPAを使用したアプリケーションの実行では,アプリケーションサーバで提供する性能解析トレース機能を使用できます。
  • JPAプロバイダとしてCJPAプロバイダを使用する場合
    性能解析トレースはアプリケーションサーバとCJPAプロバイダの両方で出力できます。
  • ほかのベンダのJPAプロバイダを使用する場合
    アプリケーションサーバで出力する性能解析トレースだけ使用できます。
なお,アプリケーションサーバでは,javax.persistenceパッケージのEntityManagerFactory,EntityManager,EntityTransaction,およびQueryのAPIで性能解析トレースを出力します。また,JPAプロバイダでは,エンティティライフサイクルコールバックに関する性能解析トレースを出力します。
なお,性能解析トレースの概要については,マニュアル「アプリケーションサーバ 機能解説 保守/移行編」の「7.2.1 アプリケーションサーバの性能解析トレースの概要」を参照してください。性能解析トレースの出力ポイントについては,マニュアル「アプリケーションサーバ 機能解説 保守/移行編」の「8. 性能解析トレースのトレース取得ポイントとPRFトレース取得レベル」を参照してください。