3

私は次のように定義された基本クラスを持っています:

@MappedSuperclass
public abstract class BaseUser {
    @ElementCollection(fetch = FetchType.EAGER)
    @CollectionTable(name = "user_tags",
        joinColumns = {
                @JoinColumn(name = "owner_id", referencedColumnName= "tagName")})
    public Set<String> getTags() {...}

そして、BaseUserを拡張する一連の派生ユーザークラス。
Hibernateを使用すると、すべての派生クラスに対して単一の「user_tags」テーブルが作成されました(これは私が望んでいたことです)。
EclipseLinkに移行した後、エンジンは「owner_id」列と「tagName」列を派生クラスの数として何度も追加しようとしたため、明らかにテーブルの作成に失敗したようです。EclipseLinkでHibernateと同じ動作をする方法はありますか?このようなシナリオでは、JPA仕様は何を期待していますか?

4

1 に答える 1

1

バグのようです。バグをログに記録して投票してください。

すでに修正されている可能性がありますので、最新版もお試しください。

于 2012-11-05T15:02:34.503 に答える