Yep, just double checked. JPA's @OneToMany has absolutely nothing to do with entity group hierarchies. You'll have to use KeyFactory. Re-read my original email and ignore the one that begins with "on second examination .. ".
-- Ikai Lan Developer Programs Engineer, Google App Engine plus.ikailan.com On Wed, Jan 18, 2012 at 11:48 AM, Ikai Lan (Google) <ika...@google.com>wrote: > On second examination, I could be wrong about JPA. I'll need to test this > and see. > > > http://stackoverflow.com/questions/4909012/how-to-create-an-object-in-a-specific-entity-group-with-jpa-google-appengine-j > > If you get around to this before me, can you let me know if it works? > > Note that as of a recent release, you can do cross entity-group > transactions. > > -- > Ikai Lan > Developer Programs Engineer, Google App Engine > plus.ikailan.com > > > > On Wed, Jan 18, 2012 at 11:22 AM, Ikai Lan (Google) <ika...@google.com>wrote: > >> Answers below. >> >> -- >> Ikai Lan >> Developer Programs Engineer, Google App Engine >> plus.ikailan.com >> >> >> >> On Tue, Jan 17, 2012 at 9:24 AM, Paul Bartosik >> <paulhbarto...@gmail.com>wrote: >> >>> I have spent a bit of time banging up against Entity Group issues. In >>> all cases, the problem was with my JPA. I had made mistakes in my >>> annotations that manifested as run-time transaction and Entity Group >>> errors . >>> >>> The documentation on JPA relationships and Entity Groups is pretty >>> light. Can someone confirm my 3 assumptions below? >>> >>> 1. In a bi-directional relationship, the unowned side of the >>> relationship will automatically be the Parent Entity and the owned >>> side will be the Child Entity. >>> >> >> No, there's nothing automatic about parent and child entity relationships >> with regards to JPA. In JPA parlance, "parent" and "child" refer to a >> one-many relationship, whereas in an entity group, the "ancestry" of an >> entity is embedded entirely within its key. >> >> >>> >>> 2. In a uni-directional relationship, both sides of the relationship >>> will be in different Entity Groups. >>> >>> Again, there's nothing automatic about this. >> >> >>> 3. When using JPA, there is no other way to specify the Entity Group >>> of your entities. >>> >> >> You can specify the entity groups of an entity by constructing the key >> via a KeyFactory: >> >> >> http://code.google.com/appengine/docs/java/javadoc/com/google/appengine/api/datastore/KeyFactory.Builder.html >> >> A lot of this confusion may come from the fact that the entity group >> concept does not map well to JDO/JPA. In a relational database, a single >> entity can have 1:N mappings to many different kinds of "child" entities (a >> School can have many Students, Teachers and Specialities, for instance), >> whereas an entity group is a single, hierarchical structuring of data (a >> User has many Blogs which have Entries which each have Comments). >> >> Do you have any experience with the low-level API? You'll develop some >> familiarity with datastore concepts if you take a look at it for a bit. >> >> >>> >>> >>> Thanks for any help. >>> >>> -Paul >>> >>> -- >>> 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-java@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. >>> >>> >> > -- 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-java@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.