2
안녕하세요 저는 Datanucleus 용 Google App Engine SDK 1.7.3 및 JPA를 사용하고 있습니다. 변수가 t
인 개체를 업데이트 할 수 없습니다.Appengine JPA 업데이트
나는 this question에 대한 대답으로 표시된 코드를 작성했습니다. 내가 코드를 사용하는 경우
: 나는이 코드를 사용하는 경우
java.lang.UnsupportedOperationException: Method not supported with JPA
at org.datanucleus.api.jpa.JPAPersistenceManager.refresh(JPAPersistenceManager.java:693)
at com.appspot.diasporajava.dao.GenericDaoImpl.update(GenericDaoImpl.java:74)
:
PersistenceManager persistenceManager=JDOHelper.getPersistenceManager(t);
persistenceManager.refresh(t);
return t;
를 내가 얻을 기전력이의 EntityManagerFactory입니다
return this.emf.createEntityManager().merge(t);
.
내가 얻을 :
javax.persistence.PersistenceException: Object with id "[email protected]" is managed by a different Object Manager
at org.datanucleus.api.jpa.NucleusJPAHelper.getJPAExceptionForNucleusException(NucleusJPAHelper.java:302)
at org.datanucleus.api.jpa.JPAEntityManager.merge(JPAEntityManager.java:576)
at com.appspot.diasporajava.dao.GenericDaoImpl.update(GenericDaoImpl.java:76)
내가 열어 내 지속성 관리자에게 모든 시간을 유지해야합니까?
@Override
@Transactional
public T create(final T t) {
EntityManager em = this.emf.createEntityManager();
em.persist(t);
em.close();
return t;
}