6
アンマネージドエンティティを別のパーシステンスコンテキストで管理するようにしたいと思います。jpaマージされていないエンティティ
em.merge(user);
しかし、私はこれを行う場合には、コンテキストに追加されていない:私は、これは、マージを行うことができることを読ん
boolean isManaged = em.contains(user);
は常にfalseです。私は次のようにする場合であっても
:
User dbuser = em.find(User.class, user.getId());
em.merge(user);
boolean isManaged = em.contains(user);
DBUSERおよびユーザーはまったく同じです。
私は間違っていますか?
私はJPAは、MySQL DBは、JBoss EAP 6.1
トランザクションを開始してコミットしましたか?さらに、次のようにします: 'dbuser = em.merge(user);' – Sam
JPA(Springなどなし、またはHibernateなし)を使ってトランザクションを開始できますか?私はちょうど@TransactionManagement(TransactionManagementType.CONTAINER)を使用します。 – Dave
'.begin()'、 '.commit()'、 '.rollback()'を呼び出すために 'em.getTransaction()'でトランザクションオブジェクトを取得できます。ただし、コンフィグレーションでは、JTA EntityManagerを使用する場合には、これは必須ではなく、不可能かもしれません。 – Sam