persistence.xml ファイルで OpenJPA プロバイダーを使用してはならない

EclipseLink にマイグレーションする場合、persistence.xml ファイルで OpenJPA プロバイダーを使用してはなりません。EclipseLink で OpenJPA プロバイダーを使用すると、ランタイム・エラーが生じます。このようなエラーを解決するには、クイック・フィックスを使用してフラグが立てられた OpenJPA プロバイダーを persistence.xml ファイルから削除するか、OpenJPA プロバイダーを適切な EclipseLink プロバイダーに置き換えます。

例えば、この規則は persistence.xml ファイル内の以下の OpenJPA プロバイダーにフラグを立てます。

<persistence-unit name="JPAService" >
	<provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider>
	<jta-data-source>java:comp/env/jdbc/DB2Connection</jta-data-source>
	<class>my.jpa.Account</class>
</persistence-unit>

以下の例は、自動化フィックスが persistence.xml ファイルを変更する方法を示しています。

<persistence-unit name="JPAService" >
	
	<jta-data-source>java:comp/env/jdbc/DB2Connection</jta-data-source>
	<class>my.jpa.Account</class>
</persistence-unit>

あるいは、以下の例に示すように、EclipseLink プロバイダーを指定してこの問題を手動で修正することもできます。

<persistence-unit name="JPAService" >
	<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
	<jta-data-source>java:comp/env/jdbc/DB2Connection</jta-data-source>
	<class>my.jpa.Account</class>
</persistence-unit>

カスタム構成をアプリケーション・ビルド・ファイルにコピーして、フィックスの自動化を有効にします。

この OpenJPA から EclipseLink へのマイグレーションの問題については、 Migration from OpenJPA to EclipseLink: Persistence XML ガイドを参照してください。