Comment 2 for bug 774677

Revision history for this message
Scott Ritchie (sritchie) wrote :

Im not getting this error yet - its currently failing at making the DevTeam Persistent:

00:08:08.757 [ERROR] javax.servlet.ServletContext log: Exception while dispatching incoming RPC call com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract java.lang.String au.edu.unimelb.csse.mugle.client.DataTestService.populateDatastore()' threw an unexpected exception: org.datanucleus.exceptions.NucleusException: App Engine ORM does not support multiple parent key provider fields.
......
at au.edu.unimelb.csse.mugle.server.DataTestServiceImpl.populateDatastore(DataTestServiceImpl.java:61)

I've done a quick search and come up with:
As the exception states, on App Engine an Entity cannot have multiple parents. This
is because OneToMany is tied to the concept of ancestor in the datastore. Each
entity can only have one direct ancestor.

I'll see what can be done, but i think what will end up happening is i'll have to change all the relations in the code to be unowned, so that theyre sets of keys with no mappings.
This will also fix the issue with the Game mapping.