2016-04-06 8 views
0

Tomcat 8で実行されていたプロジェクトをWeblogicに移行します。私は、WebLogicにデプロイするとき、私は休止状態+ JPA 2を使用しています は、次のエラーを得た:Weblogic + Hibernateエラー:javax.persistence.JoinTable.indexes()[Ljavax/persistence/Index

Failure occurred in the execution of deployment request with ID "26012160125422" for task "114". Error is: "weblogic.application.ModuleException: java.lang.NoSuchMethodError: javax.persistence.JoinTable.indexes()[Ljavax/persistence/Index;" 

weblogic.application.ModuleException:java.lang.NoSuchMethodErrorの:javax.persistence.JoinTable.indexes()[Ljavax /永続/インデックス

環境
- ジャワ:jdk1.8.0_60
- WebLogicの:12.1.3
- 休止 - EntityManagerを:4.3.1.Final
- 休止状態 - コア:4.3.1.Final
- javaee-api:7.0

のpom.xml

<dependencies> 
    <dependency> 
     <groupId>javax</groupId> 
     <artifactId>javaee-api</artifactId> 
     <version>7.0</version> 
    </dependency> 
    <dependency> 
     <groupId>org.hibernate</groupId> 
     <artifactId>hibernate-core</artifactId> 
     <version>4.3.1.Final</version> 
    </dependency>   
    <dependency> 
     <groupId>org.hibernate</groupId> 
     <artifactId>hibernate-entitymanager</artifactId> 
     <version>4.3.1.Final</version>   
    </dependency> 
    <dependency> 
     <groupId>com.microsoft.sqlserver</groupId> 
     <artifactId>sqljdbc4</artifactId> 
     <version>4.0</version> 
    </dependency>  
</dependencies> 

答えて

0

あなたがjavaee-api-7.0.jarを使用すること奇妙である、Hibernateは4は、依存関係としてhibernate-jpa-2.1-api-1.0.0.Final.jarを持っています。しかし、それはエラーの理由ではありません。

JoinTable.indexes()は、Java Persistence 2.1で追加されました。したがって、クラスパス(Weblogicのデフォルトのlibフォルダ内)にあるJoinTableアノテーションを持つ古いjarファイルがあります。このjarファイルは、

URL joinTableUrl = Thread.currentThread().getContextClassLoader() 
    .getResource(
    "javax/persistence/JoinTable.class"); 
System.out.println(joinTableUrl); 

JoinTableを確認するにはHibernate設定コードの前にこのコードを実行される

チェックするには、indexes()方法

Class<?> joinTable = Thread.currentThread().getContextClassLoader() 
     .loadClass(JoinTable.class.getName()); 

System.out.println(Arrays.asList(joinTable.getDeclaredMethods())); 
を持っています
関連する問題