2014-01-08 4 views
1

Я получаю ниже исключения, когда мы пытаемся развернуть наше приложение с JPA2 Provider как Hibernate в WebLogic 12,1JPA2 Provider, как Hibernate в Weblogic 12,1

Caused By: java.lang.ClassCastException: org.eclipse.persistence.jpa.PersistenceProvider cannot be cast to javax.persistence.spi.PersistenceProvider 

    at javax.persistence.Persistence$1.isLoaded(Persistence.java:92) 

    at org.hibernate.validator.internal.engine.resolver.JPATraversableResolver.isReachable(JPATraversableResolver.java:57) 

У меня ниже записей в weblogic.xml:

 <package-name>org.hibernate.*</package-name> 

     <package-name>javax.persistence.*</package-name> 

    </prefer-application-packages> 

и ниже настройка пути до класса в веб-сервере commEnv.cmd (общий/bin).

set PRE_CLASSPATH=%MW_HOME%\modules\javax.persistence_2.0.0.0_2-0.jar; 

Приложение работает отлично в weblogic 11g с настройками пути ниже уровня pre.

PRE_CLASSPATH = "/ apps/Oracle/Middleware/modules/javax.persistence_1.0.0.0_2-0-0.jar: /apps/Oracle/Middleware/modules/com.oracle.jpa2support_1.0.0.0_2-0 .jar "

Был добавлен jar com.oracle.jpa2support_1.0.0.0_2-0.jar. Эта банка отсутствует в каталоге модулей weblogic 12.1.

Может ли кто-нибудь предложить, как разрешить проблему конфликта поставщика постоянства в weblogic 12.1?

Hibernate Jar Версии: спящий режим-ядро-4.2.0.Final.jar, спящий режим-JPA-2,0-API-1.0.1.Final.jar, спящий режим-валидатор-4.3.1.Final.jar

ответ

2

Он работал после удаления пакета из ниже weblogic.xml

<package-name>javax.persistence.*</package-name> 

Также PRE_CLASSPATH настройка не требуется для 12с

Смежные вопросы