java.lang.RuntimeException: java.io.NotSerializableException

508 views
Skip to first unread message

aditya rathi

unread,
Apr 12, 2010, 1:53:48 AM4/12/10
to objectify-appengine
Hi,

I am using Objectify persistence framework with DWR. But I am getting
error while fetching the data. Although I am able to save.

Here is error I am getting >>java.lang.RuntimeException:
java.io.NotSerializableException.

I am using ObjectifyGenricDAO provided in the example to retrieve my
persisted classes.

Thanks,
Aditya Rathi

Jeff Schnitzer

unread,
Apr 12, 2010, 1:51:02 PM4/12/10
to objectify...@googlegroups.com
There is not enough information here to sustain even a wild guess. In
the future, when asking for help on mailing lists (not just this one),
please provide:

* full stack traces
* sample bits of code that you think might be problematic

Given that you are getting a NotSerializableException, I would 1)
Figure out what object is failing to serialize and 2) Figure out how
DWR performs serialization. Maybe it's as simple as adding
Serializable to your class (I've never used DWR so I couldn't say).

Jeff

> --
> To unsubscribe, reply using "remove me" as the subject.
>

Aditya Rathi

unread,
Apr 12, 2010, 11:27:32 PM4/12/10
to objectify...@googlegroups.com
Sorry for insufficient infomation. Here is all information that you have suggested:
 
 my class defination:
 @Entity
 public class UniqueBrand implments Serlizable{
 @Id
 private String name;
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
}
 
 My Processing code:
  ObjectifyGenericDao<UniqueBrand> brandDAO = new ObjectifyGenericDao<UniqueBrand>(UniqueBrand.class);
  Query<UniqueBrand> brandList = brandDAO.ofy().query(UniqueBrand.class);
  ArrayList<String> nameList = new ArrayList<String>();
  for(UniqueBrand b:brandList){
   nameList.add(b.getName());
  }
  return nameList;
  
  below is Stack Trace:
  
  /dwr/call/plaincall/FrontAction.getAllBrands.dwr
java.lang.RuntimeException: java.io.NotSerializableException: com.iwindia2.action.FrontAction
 at com.google.apphosting.runtime.jetty.SessionManager.serialize(SessionManager.java:361)
 at com.google.apphosting.runtime.jetty.SessionManager.createEntityForSession(SessionManager.java:341)
 at com.google.apphosting.runtime.jetty.SessionManager$AppEngineSession.save(SessionManager.java:162)
 at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:41)
 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:243)
 at com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5485)
 at com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5483)
 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:536)
 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:404)
 at java.lang.Thread.run(Unknown Source)
Caused by: java.io.NotSerializableException: com.iwindia2.action.FrontAction
 at java.io.ObjectOutputStream.writeObject0(Unknown Source)
 at java.io.ObjectOutputStream.writeObject(Unknown Source)
 at java.util.HashMap.writeObject(Unknown Source)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at java.io.ObjectStreamClass.invokeWriteObject(Unknown Source)
 at java.io.ObjectOutputStream.writeSerialData(Unknown Source)
 at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)
 at java.io.ObjectOutputStream.writeObject0(Unknown Source)
 at java.io.ObjectOutputStream.writeObject(Unknown Source)
 at com.google.apphosting.runtime.jetty.SessionManager.serialize(SessionManager.java:358)
 ... 39 more


Scott Hernandez

unread,
Apr 12, 2010, 11:33:32 PM4/12/10
to objectify...@googlegroups.com
This has nothing to do with objectify.

"java.io.NotSerializableException: com.iwindia2.action.FrontAction" means FrontAction class is not serializable and cannot be placed in the (http) session.

Aditya Rathi

unread,
Apr 13, 2010, 10:41:40 AM4/13/10
to objectify...@googlegroups.com
Thanks Scott!!!
Reply all
Reply to author
Forward
0 new messages