google app engine - Why can't GWT deserialize the native datastore key any more? -
google app engine - Why can't GWT deserialize the native datastore key any more? -
i've started have problem having upgraded of libraries:
i using gwt 2.4, app engine 1.6.3 , objectify 3.0.
i upgraded gwt 2.5, app engine 1.7.4 , objectify 4.0b1.
since getting unusual error only 1 other person seems have on entire internet!
stack trace:
class="lang-java prettyprint-override">caused by: com.google.gwt.user.client.rpc.serializationexception: com.google.appengine.api.datastore.key/1349195865 @ com.google.gwt.user.client.rpc.impl.serializerbase.gettypehandler(serializerbase.java:153) @ com.google.gwt.user.client.rpc.impl.serializerbase.instantiate(serializerbase.java:114) @ com.google.gwt.user.client.rpc.impl.clientserializationstreamreader.deserialize(clientserializationstreamreader.java:396) @ com.google.gwt.user.client.rpc.impl.abstractserializationstreamreader.readobject(abstractserializationstreamreader.java:119) @ com.googlecode.objectify.key_fieldserializer.deserialize(key_fieldserializer.java:11) @ com.googlecode.objectify.key_fieldserializer.deserial(key_fieldserializer.java:29) @ com.google.gwt.user.client.rpc.impl.serializerbase.deserialize(serializerbase.java:95) @ com.google.gwt.user.client.rpc.impl.clientserializationstreamreader.deserialize(clientserializationstreamreader.java:398) @ com.google.gwt.user.client.rpc.impl.abstractserializationstreamreader.readobject(abstractserializationstreamreader.java:119) @ com.google.gwt.user.client.rpc.core.java.util.collection_customfieldserializerbase.deserialize(collection_customfieldserializerbase.java:34) @ com.google.gwt.user.client.rpc.core.java.util.arraylist_customfieldserializer.deserialize(arraylist_customfieldserializer.java:34) @ com.google.gwt.user.client.rpc.core.java.util.arraylist_fieldserializer.deserial(arraylist_fieldserializer.java:19) @ com.google.gwt.user.client.rpc.impl.serializerbase.deserialize(serializerbase.java:95) @ com.google.gwt.user.client.rpc.impl.clientserializationstreamreader.deserialize(clientserializationstreamreader.java:398) @ com.google.gwt.user.client.rpc.impl.abstractserializationstreamreader.readobject(abstractserializationstreamreader.java:119) @ com.utilitiessavings.testapp2.shared.account_fieldserializer.deserialize(account_fieldserializer.java:29) @ com.utilitiessavings.testapp2.shared.account_fieldserializer.deserial(account_fieldserializer.java:51) @ com.google.gwt.user.client.rpc.impl.serializerbase.deserialize(serializerbase.java:95) @ com.google.gwt.user.client.rpc.impl.clientserializationstreamreader.deserialize(clientserializationstreamreader.java:398) @ com.google.gwt.user.client.rpc.impl.abstractserializationstreamreader.readobject(abstractserializationstreamreader.java:119) @ com.google.gwt.user.client.rpc.core.java.util.collection_customfieldserializerbase.deserialize(collection_customfieldserializerbase.java:34) @ com.google.gwt.user.client.rpc.core.java.util.arraylist_customfieldserializer.deserialize(arraylist_customfieldserializer.java:34) @ com.google.gwt.user.client.rpc.core.java.util.arraylist_fieldserializer.deserial(arraylist_fieldserializer.java:19) @ com.google.gwt.user.client.rpc.impl.serializerbase.deserialize(serializerbase.java:95) @ com.google.gwt.user.client.rpc.impl.clientserializationstreamreader.deserialize(clientserializationstreamreader.java:398) @ com.google.gwt.user.client.rpc.impl.abstractserializationstreamreader.readobject(abstractserializationstreamreader.java:119) @ com.utilitiessavings.testapp2.client.action.getaccountsresult_fieldserializer.deserialize(getaccountsresult_fieldserializer.java:20) @ com.utilitiessavings.testapp2.client.action.getaccountsresult_fieldserializer.deserial(getaccountsresult_fieldserializer.java:38) @ com.google.gwt.user.client.rpc.impl.serializerbase.deserialize(serializerbase.java:95) @ com.google.gwt.user.client.rpc.impl.clientserializationstreamreader.deserialize(clientserializationstreamreader.java:398) @ com.google.gwt.user.client.rpc.impl.abstractserializationstreamreader.readobject(abstractserializationstreamreader.java:119) @ com.google.gwt.user.client.rpc.impl.requestcallbackadapter$responsereader$8.read(requestcallbackadapter.java:106) @ com.google.gwt.user.client.rpc.impl.requestcallbackadapter.onresponsereceived(requestcallbackadapter.java:214) ... 27 more
the problem occuring when deserializing business relationship contains objectify key wraps native datastore key.
serializing works fine, , object graph fine , dandy in datastore, can't contains key, pretty much useful.
any pointers appreciated.
i've had same issue , seems has nil datastore either because when sent object server , tried retrieve still got deserialization error.
asynccallservice{ void createuser(user user, asynccallback<user> user); } serviceimpl{ user createuser(user user){ db.save(user); homecoming user }
and still causing serialization errors or rather deserializaton errors on client.
what i've done pass new user;
user createuser(user user){ db.save(user); user newuser = new user(); newuser.setid(user.getid()) homecoming newuser;
}
problem solved except i've lost of "benefits" of older app engine stack deserialization wasn't necessary.
google-app-engine gwt deserialization objectify gwt-2.5
Comments
Post a Comment