1

この質問がここで何度も聞かれたことは知っていますが、どの解決策もうまくいかなかったようです. 私はmavenと休止状態の両方に慣れていないので、これをもう一度尋ねることを許してください。

pom.xml の hibernate 依存関係

<hibernate.version>4.2.0.Final</hibernate.version>

<dependency>
 <groupId>org.hibernate</groupId>
 <artifactId>hibernate-entitymanager</artifactId>
 <version>${hibernate.version}</version>
</dependency>

<dependency>
 <groupId>org.hibernate</groupId>
 <artifactId>hibernate-validator</artifactId>
 <version>${hibernate.version}</version>
</dependency>

これにより、次のjarが得られます。

hibernate-entitymanager-4.2.0.Final
hibernate-core-4.2.0.Final
hibernate-validator-4.2.0.Final
hibernate-jpa-2.0-api-1.0.1.Final

私も持っています:

hibernate-commons-annotations-4.0.1.Final

しかし、どうやって手に入れたのかわかりません。

カテゴリ - 製品の関係に 1 対 1 の関係を使用しています。

@Entity
@Table(name="Products")
public class Product {
   @Id    
   @Column(name="id")
   @GeneratedValue
   int productId;

   @NotEmpty
   @Length(max=50)
   @Column(name="name")
   String name;

   @Column(name="category_id")
   int categoryId;

   @OneToOne
   @ForeignKey(name="categoryId")
   private Category category;

   // getters and setters

}

編集:

Weblogic 11g jpa jar が「hibernate-jpa-2.0-api」よりも優先されることは明らかです。jpa-1.0 を使用する古いバージョンの hibernate にフォールバックする必要がありますか、または jpa jar の代わりに「hibernate-jpa-2.0-api」を使用するように weblogic を強制する方法はありますか?

4

3 に答える 3

1

私は同じ pbl を持っていて、persistence-api-1.0.jar と ejb3-persistence.jar を削除し、javax.persistence-2.0.0.jar を追加して解決しました。

于 2014-07-10T14:21:40.643 に答える