Przeprowadzając migrację do środowiska EclipseLink, nie należy używać dostawców OpenJPA w pliku persistence.xml. Użycie dostawców OpenJPA w środowisku EclipseLink powoduje błędy w czasie wykonywania. Aby rozwiązać te błędy, należy użyć szybkiej poprawki usuwającej oznaczonego dostawcę OpenJPA z pliku persistence.xml lub zastąpić dostawcę OpenJPA odpowiednim dostawcą EclipseLink.
Na przykład reguła powoduje oznaczenie następującego dostawcy OpenJPA w pliku persistence.xml.
<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> |
Poniższy przykład przedstawia sposób, w jaki zautomatyzowana poprawka modyfikuje plik persistence.xml .
<persistence-unit name="JPAService" > <jta-data-source>java:comp/env/jdbc/DB2Connection</jta-data-source> <class>my.jpa.Account</class> </persistence-unit> |
Ten problem można również rozwiązać ręcznie, określając dostawcę EclipseLink, jak pokazano w poniższym przykładzie:
<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> |
Skopiuj konfigurację niestandardową do pliku budowania aplikacji, aby włączyć automatyzację poprawek.
Informacje na temat tego problemu z migracją interfejsu OpenJPA do interfejsu EclipseLink zawiera podręcznik Migracja z interfejsu OpenJPA do EclipseLink: Plik XML trwałości.