Thanks Stephen!!! The blog post was super helpful. I got to work! :) Saqib
On Aug 8, 5:38 pm, Stephen Johnson <[email protected]> wrote: > Check out: > > http://gae-java-persistence.blogspot.com/2009/10/serialized-fields.html > > Perhaps re-writing like that will work. > > On Aug 8, 4:59 pm, Saqib Ali <[email protected]> wrote: > > > > > Stephen, > > > had already tried that earlier. tried it now again. no luck :( > > > On Aug 8, 3:42 pm, Stephen Johnson <[email protected]> wrote: > > > > Hi Saqib, > > > Try this: > > > �...@persistent(serialized = "true") > > > > Stephen > > > > On Aug 8, 2:52 pm, Saqib Ali <[email protected]> wrote: > > > > > I have an object defined Serializable as follows: > > > > > public class comment implements Serializable { > > > > /** > > > > * > > > > */ > > > > private static final long serialVersionUID = 1L; > > > > private String commentText; > > > > private String commenterFedID; > > > > > public comment (){ > > > > this.commentText = ""; > > > > this.commenterFedID = ""; > > > > } > > > > > public comment (String commentText, String commenterFedID){ > > > > this.commentText = commentText; > > > > this.commenterFedID = commenterFedID; > > > > } > > > > > public String getCommentText() { > > > > return commentText; > > > > } > > > > > public String getCommenterFedID() { > > > > return commenterFedID; > > > > } > > > > > } > > > > > I am using this serialized object in a Data Class as follows: > > > > > @Persistent > > > > private ArrayList<comment> comments = new ArrayList<comment>(); > > > > > But it generates the following exception: > > > > > java.lang.IllegalArgumentException: comments: testapp.comment is not a > > > > supported property type. > > > > at > > > > com.google.appengine.api.datastore.DataTypeUtils.checkSupportedSingleValue( > > > > DataTypeUtils.java: > > > > 184) > > > > at > > > > com.google.appengine.api.datastore.DataTypeUtils.checkSupportedValue(DataTy > > > > peUtils.java: > > > > 149) > > > > at > > > > com.google.appengine.api.datastore.DataTypeUtils.checkSupportedValue(DataTy > > > > peUtils.java: > > > > 123) > > > > at > > > > com.google.appengine.api.datastore.Entity.setProperty(Entity.java: > > > > 280) > > > > at > > > > org.datanucleus.store.appengine.DatastoreFieldManager.storeObjectField(Data > > > > storeFieldManager.java: > > > > 843) > > > > at > > > > org.datanucleus.state.AbstractStateManager.providedObjectField(AbstractStat > > > > eManager.java: > > > > 1037) > > > > at testapp.idea.jdoProvideField(idea.java) > > > > at testapp.idea.jdoProvideFields(idea.java) > > > > at > > > > org.datanucleus.state.JDOStateManagerImpl.provideFields(JDOStateManagerImpl > > > > .java: > > > > 2715) > > > > at > > > > org.datanucleus.store.appengine.DatastorePersistenceHandler.updateObject(Da > > > > tastorePersistenceHandler.java: > > > > 534) > > > > at > > > > org.datanucleus.state.JDOStateManagerImpl.flush(JDOStateManagerImpl.java: > > > > 4576) > > > > at > > > > org.datanucleus.ObjectManagerImpl.flushInternal(ObjectManagerImpl.java: > > > > 2814) > > > > at > > > > org.datanucleus.ObjectManagerImpl.flush(ObjectManagerImpl.java: > > > > 2754) > > > > at > > > > org.datanucleus.ObjectManagerImpl.preCommit(ObjectManagerImpl.java: > > > > 2893) > > > > at > > > > org.datanucleus.TransactionImpl.internalPreCommit(TransactionImpl.java: > > > > 369) > > > > at > > > > org.datanucleus.TransactionImpl.commit(TransactionImpl.java:256) > > > > at > > > > org.datanucleus.ObjectManagerImpl.close(ObjectManagerImpl.java: > > > > 801) > > > > at > > > > org.datanucleus.jdo.JDOPersistenceManager.close(JDOPersistenceManager.java: > > > > 271) > > > > at testapp.saveComment.doGet(saveComment.java:43) > > > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:693) > > > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:806) > > > > at > > > > org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java: > > > > 511) > > > > at org.mortbay.jetty.servlet.ServletHandler > > > > $CachedChain.doFilter(ServletHandler.java:1166) > > > > at > > > > com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlo > > > > bUploadFilter.java: > > > > 97) > > > > at org.mortbay.jetty.servlet.ServletHandler > > > > $CachedChain.doFilter(ServletHandler.java:1157) > > > > at > > > > com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionF > > > > ilter.java: > > > > 35) > > > > at org.mortbay.jetty.servlet.ServletHandler > > > > $CachedChain.doFilter(ServletHandler.java:1157) > > > > at > > > > com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(Trans > > > > actionCleanupFilter.java: > > > > 43) > > > > at org.mortbay.jetty.servlet.ServletHandler > > > > $CachedChain.doFilter(ServletHandler.java:1157) > > > > at > > > > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: > > > > 388) > > > > at > > > > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java: > > > > 216) > > > > at > > > > org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: > > > > 182) > > > > at > > > > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: > > > > 765) > > > > at > > > > org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java: > > > > 418) > > > > at > > > > com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionH > > > > andlerMap.java: > > > > 238) > > > > at > > > > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: > > > > 152) > > > > at org.mortbay.jetty.Server.handle(Server.java:326) > > > > at > > > > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: > > > > 542) > > > > at org.mortbay.jetty.HttpConnection > > > > $RequestHandler.headerComplete(HttpConnection.java:923) > > > > at > > > > com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequ > > > > estParser.java: > > > > 76) > > > > at > > > > org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) > > > > at > > > > com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceReques > > > > t(JettyServletEngineAdapter.java: > > > > 135) > > > > at > > > > com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java: > > > > 250) > > > > at com.google.apphosting.base.RuntimePb$EvaluationRuntime > > > > $6.handleBlockingRequest(RuntimePb.java:7115) > > > > at com.google.apphosting.base.RuntimePb$EvaluationRuntime > > > > $6.handleBlockingRequest(RuntimePb.java:7113) > > > > at > > > > com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingAp > > > > plicationHandler.java: > > > > 24) > > > > at > > > > com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java: > > > > 398) > > > > at com.google.net.rpc.impl.Server$2.run(Server.java:852) > > > > at > > > > com.google.tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java: > > > > 56) > > > > at > > > > com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan(LocalTraceSpa > > > > nBuilder.java: > > > > 576) > > > > at com.google.net.rpc.impl.Server.startRpc(Server.java:807) > > > > at > > > > com.google.net.rpc.impl.Server.processRequest(Server.java:369) > > > > at > > > > com.google.net.rpc.impl.ServerConnection.messageReceived(ServerConnection.j > > > > ava: > > > > 442) > > > > at > > > > com.google.net.rpc.impl.RpcConnection.parseMessages(RpcConnection.java: > > > > 319) > > > > at > > > > com.google.net.rpc.impl.RpcConnection.dataReceived(RpcConnection.java: > > > > 290) > > > > at > > > > com.google.net.async.Connection.handleReadEvent(Connection.java: > > > > 474) > > > > at > > > > com.google.net.async.EventDispatcher.processNetworkEvents(EventDispatcher.j > > > > ava: > > > > 831) > > > > at > > > > com.google.net.async.EventDispatcher.internalLoop(EventDispatcher.java: > > > > 207) > > > > at > > > > com.google.net.async.EventDispatcher.loop(EventDispatcher.java: > > > > 103) > > > > at > > > > com.google.net.rpc.RpcService.runUntilServerShutdown(RpcService.java: > > > > 251) > > > > at com.google.apphosting.runtime.JavaRuntime > > > > $RpcRunnable.run(JavaRuntime.java:417) > > > > at java.lang.Thread.run(Unknown Source) > > > > > Any thoughts on what could be causing this? > > > > > Saqib -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
