7

私は次の(単純化された)状況を持っています:

表 A のフィールド:

  • ID
  • 一般的な

テーブル AB のフィールド:

  • 援助
  • 入札共通

表 B のフィールド:

  • ID
  • 一般的な

次のようにOneToManyを使用してエンティティにマップしたい(テーブルAにマップされたマスタークラス内):

@OneToMany(cascade = CascadeType.ALL, orphanRemoval = false, fetch = FetchType.LAZY)
@JoinTable(name = "AB", 
joinColumns= {
    @JoinColumn(name = "AID", referencedColumnName="ID"), 
    @JoinColumn(name = "COMMONID", referencedColumnName="COMMONID")},
inverseJoinColumns = {
    @JoinColumn(name = "BID", referencedColumnName="ID"), 
    @JoinColumn(name = "COMMONID", referencedColumnName="COMMONID")})
private Set<MyClassForB> list= new HashSet<MyClassForB>();

セッションを構築すると、次のエラーが発生します。

org.hibernate.MappingException: Repeated column in mapping for collection using @JoinTable list column: COMMONID

私は何を間違っていますか?私はHibernateが初めてだと考えてください。

4

2 に答える 2