2
JPA에서 GAE-J의 트랜잭션을 사용하고 싶습니다.JPA를 사용하여 특정 엔티티 그룹에 개체를 만드는 방법은 무엇입니까? (Google AppEngine Java)
Entity child= new Entity("Child", "ParentKey");
을하지만 어떻게 JPA로 그것을 할 :
JPA없이그것은되어야 하는가?
@Entity
public class Parent{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Key id;
private String text;
}
@Entity
public class Child{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Key id;
private Parent parent;
private String text;
}
시도 ...
Parent parent = new Parent();
em.persist(parent);
em.refresh(parent);
Child child = new Child();
child.setParent(parent);
em.persist(child);
이 작동하지 않습니다 : 뒤에서 앞으로 조금 소리
org.datanucleus.store.appengine.DatastoreRelationFieldManager$ChildWithoutParentException:
Detected attempt to establish Child(130007) as the parent of Parent(132001) but the entity identified by Child(132001) has already been persisted without a parent. A parent cannot be established or changed once an object has been persisted.
을 ... 내가 멍청이 있습니까? 아니면 쉬운 방법이 있습니까?
감사합니다.
이 두 클래스는 나를 위해 증강 오류가 발생합니다. 구글 AppEngine을 증강 : java.lang.NullPointerException이 구글 AppEngine에 증강 :에 의한 org.datanucleus.api.jpa.metadata.JPAAnnotationReader.newMetaDataForMember (JPAAnnotationReader.java:1995) 구글 AppEngine에 증강에 : org.datanucleus.api에서 .jpa.metadata.JPAAnnotationReader.processMemberAnnotations (JPAAnnotationReader.java:1126) – Boris
이제 JPA 2를 설정하면됩니다. 하지만 당신이 다시 협회 없이는 불가능하다고 말하지 않습니까? – Boris