Hi Saqib, Try this: @Persistent(serialized = "true") Stephen
On Aug 8, 2:52 pm, Saqib Ali <docbook....@gmail.com> 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(DataTypeUtils.java: > 149) > at > com.google.appengine.api.datastore.DataTypeUtils.checkSupportedValue(DataTypeUtils.java: > 123) > at com.google.appengine.api.datastore.Entity.setProperty(Entity.java: > 280) > at > org.datanucleus.store.appengine.DatastoreFieldManager.storeObjectField(DatastoreFieldManager.java: > 843) > at > org.datanucleus.state.AbstractStateManager.providedObjectField(AbstractStateManager.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(DatastorePersistenceHandler.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(ParseBlobUploadFilter.java: > 97) > at org.mortbay.jetty.servlet.ServletHandler > $CachedChain.doFilter(ServletHandler.java:1157) > at > com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java: > 35) > at org.mortbay.jetty.servlet.ServletHandler > $CachedChain.doFilter(ServletHandler.java:1157) > at > com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.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(AppVersionHandlerMap.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(RpcRequestParser.java: > 76) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) > at > com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(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(BlockingApplicationHandler.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(LocalTraceSpanBuilder.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.java: > 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.java: > 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 google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.