This is a similar posting I had posted earlier "incorrect number of entities returned". Hopefully, this posting may be more clean and I will get some replies. I have two classes 1) A 2) B A is in 1 to many relationship with B @PersistenceCapable(identityType = IdentityType.APPLICATION) public class A { @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) @Extension(vendorName = "datanucleus", key="gae.encoded-pk", value="true") private String id;
@Persistent @Extension(vendorName = "datanucleus", key="gae.pk-name", value="true") private String name; } @PersistenceCapable(identityType = IdentityType.APPLICATION) public class B { @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) @Extension(vendorName = "datanucleus", key = "gae.encoded-pk", value = "true") private String id; @Persistent @Extension(vendorName = "datanucleus", key = "gae.pk-name", value = "true") private String name; } public class BTest extends JDOTestCase { public void testB() throws Exception { A a = new A(); a.setName("a"); B b = new B(); b.setName("b"); a.getBList().add(b); beginTxn(); pm.makePersistent(a); a = pm.getObjectById(A.class, a.getId()); assertEquals(1, a.getBList().size()); commitTxn(); B b1 = new B(); b1.setName("b1"); beginTxn(); pm.makePersistent(b1); b1 = pm.getObjectById(B.class, b1.getId()); b1.getId(); commitTxn(); } } The test fails at the last line "b1.getId()" If any of B entity is in relation with A earlier, then another entity of B cannot be persisted by itself. If I move the 2nd transaction to the beginning, the test passes. -Aswath -- You received this message because you are subscribed to the Google Groups "Google App Engine for Java" group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.