I'm using GAE 1.8.1 and I've hit an issue with Objectify with the new scattered ID system. At least I think it's Objectify, I'm not sure (Using Objectify 4 RC1). I'm getting this..
Caused by: java.lang.IllegalArgumentException: id cannot be zero
at com.google.appengine.api.datastore.KeyFactory.createKey(KeyFactory.java:52)
at com.google.appengine.api.datastore.KeyFactory.createKey(KeyFactory.java:47)
at com.googlecode.objectify.Key.<init>(Key.java:91)
at com.googlecode.objectify.Key.create(Key.java:39)
at com.googlecode.objectify.impl.cmd.LoadTypeImpl.id(LoadTypeImpl.java:77)
The records get put in the datastore correctly as they have an ID, but this is on fetching the data out.
So I have to roll back to what it was before for the time being. It states here that you can specify the legacy ID generation with modifying the auto_id_policy in appengine-web.xml. I've tried adding this to the file:
<auto-id-policy>legacy</auto-id-policy>
But it doesn't work, or at least it might work if the XSD it validates against supports this tag. You can't deploy the app because of this.
we are aware of this issue and working on a fix.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With