2012-03-15 20 views
0

私はNonUniqueObjectExceptionをJPAを使用してオブジェクトを保持すると取得しています。NonUniqueObjectException永続オブジェクトの場合

私が執拗にするオブジェクトには、他のオブジェクトがあり、場合によっては同じIDを持つオブジェクトもあります。

すでにDBに保存されているオブジェクト内のマージが可能であることを確認しますが、私は唯一作ることができる1つのオブジェクト(このオブジェクトは、すべての情報を持っている)

で持続私はマージを行うために、私のIDに任意の注釈を入れることができますこのidがすでにMySQLデータベースに保存されている場合は、

答えて

1

entityManager.merge(..)を使用するか、idフィールドを空のままにします。それ以外の場合は、同じIDを持つエンティティがデータベースに存在するかどうかをチェックし、見つかった場合は失敗します。

+0

entityManager.mergeを使用しようとしましたが、hibernateに指定されたIDを持つオブジェクトが1つもないため、エラーが発生します。私はその理由を知っていない私のDB内に何も保存していないと正常な休止状態が見つかりませんir –

+1

私は私のカスケードタイプを変更すると私の問題を解決するために働いています –

関連する問題