Similar problem with SimpleDateFormat here ->

http://groups.google.com/group/google-appengine-java/browse_thread/thread/a7ea6dd1e097d496?pli=1



On Aug 20, 10:46 am, James H <james.hollier...@gmail.com> wrote:
> Ah yes, I was looking for that very switch to disable Sessions and it
> did help isolate the problem towards a field within my class being
> pushed into the Session.  The field is java.text.SimpleDateFormat
> which does implement Serializable so don't know why the system would
> be able to serialize it, then NOT be able to deserialize it.  I think
> for now I will tag it as Transient and re-init it before use.
>
> On Aug 19, 10:17 am, Toby Reyelts <to...@google.com> wrote:
>
> > Unfortunately, I don't understand exactly why the problem is still occurring
> > for you. The stacktrace you shared points directly to failure of
> > deserialization of a session attribute:
>
> >        ....
> >        at java.io.ObjectInputStream.readObject0(Unknown Source)
> >        at java.io.ObjectInputStream.readObject(Unknown Source)
> > *       at com.google.apphosting.runtime.**jetty.SessionManager.**
> > deserialize(SessionManager.java:358)
> > *       at
> > com.google.apphosting.runtime.jetty.SessionManager.loadSession(SessionManag­er.java:280)
> >        ....
>
> > Are you absolutely sure you're not putting something into the HttpSession?
> > The two steps I would take are to:
>
> > 1) disable http sessions in appengine-web.xml then
> > 2) delete all http sessions saved in the datastore
>
> > On Wed, Aug 19, 2009 at 10:45 AM, James H <james.hollier...@gmail.com>wrote:
>
> > > Ok, I reviewed my use of Session attribute (I only use 1 called
> > > userSession) and cleaned up a few things such as the serial UID, etc.
> > > During production testing, I also Deleted the _ah_Session rows and I
> > > notice the problem still occurred on the home page as before.  So, I
> > > modified the app to NOT perform any session.put() calls.  And this
> > > same exception is still occurring.
>
> > > The behavior is as follows.  Launch a new browser and the home page
> > > comes up, try to Refresh the home page and the exception gets thrown.
> > > Is it possible the deploy is NOT refreshing ALL my code in
> > > production?  Is there a way to force the deploy to do a truncate/load
> > > rather than an incremental?  I hate to think there are some stale
> > > classes out there being loaded somehow...
>
> > > So, as before I do NOT see any relation at this point between this
> > > error and my coding.  From the trace, the error is NOT occurring
> > > within the scope of my code.  Any other ideas?
>
> > > On Aug 18, 6:42 pm, Toby Reyelts <to...@google.com> wrote:
> > > > You probably have something stored in your session that's not
> > > deserializing.
> > > > If you clear your sessions, this problem should go away. In the next
> > > > release, this problem should be fixed under most circumstances.
>
> > > > On Tue, Aug 18, 2009 at 6:05 PM, James H <james.hollier...@gmail.com>
> > > wrote:
>
> > > > > My app has been working well, but after this weekends changes my
> > > > > deployment does NOT come online clean...though I can't related the
> > > > > error to anything that has changed.  The stack trace is attempting to
> > > > > load the JSP, so it doesn't appear the problem is related to running
> > > > > the JSP.  Hence, execution has NOT reached my code!  Any ideas?
>
> > > > > Naturally, all works fine during local testing.  So, this is only
> > > > > failing in production.
>
> > > > > EXCEPTION
> > > > > javax.servlet.ServletException:java.lang.ArrayStoreException:
> > > > > [Ljava.lang.String;
> > > > >        at
> > > com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle
> > > > > (AppVersionHandlerMap.java:239)
> > > > >        at org.mortbay.jetty.handler.HandlerWrapper.handle
> > > > > (HandlerWrapper.java:139)
> > > > >        at org.mortbay.jetty.Server.handle(Server.java:313)
> > > > >        at
> > > > > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:
> > > > > 506)
> > > > >        at
> > > org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete
> > > > > (HttpConnection.java:830)
> > > > >        at
> > > > > com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable
> > > > > (RpcRequestParser.java:76)
> > > > >        at
> > > org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
> > > > >        at
>
> > > com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceReques­­t
> > > > > (JettyServletEngineAdapter.java:139)
> > > > >        at com.google.apphosting.runtime.JavaRuntime.handleRequest
> > > > > (JavaRuntime.java:235)
> > > > >        at com.google.apphosting.base.RuntimePb$EvaluationRuntime
> > > > > $6.handleBlockingRequest(RuntimePb.java:4823)
> > > > >        at com.google.apphosting.base.RuntimePb$EvaluationRuntime
> > > > > $6.handleBlockingRequest(RuntimePb.java:4821)
> > > > >        at
> > > com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest
> > > > > (BlockingApplicationHandler.java:24)
> > > > >        at
> > > com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:
> > > > > 359)
> > > > >        at com.google.net.rpc.impl.Server$2.run(Server.java:820)
> > > > >        at com.google.tracing.LocalTraceSpanRunnable.run
> > > > > (LocalTraceSpanRunnable.java:56)
> > > > >        at 
> > > > > com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan
> > > > > (LocalTraceSpanBuilder.java:516)
> > > > >        at com.google.net.rpc.impl.Server.startRpc(Server.java:775)
> > > > >        at
> > > com.google.net.rpc.impl.Server.processRequest(Server.java:348)
> > > > >        at com.google.net.rpc.impl.ServerConnection.messageReceived
> > > > > (ServerConnection.java:436)
> > > > >        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:
> > > > > 428)
> > > > >        at com.google.net.async.EventDispatcher.processNetworkEvents
> > > > > (EventDispatcher.java:762)
> > > > >        at com.google.net.async.EventDispatcher.internalLoop
> > > > > (EventDispatcher.java:207)
> > > > >        at
> > > com.google.net.async.EventDispatcher.loop(EventDispatcher.java:
> > > > > 101)
> > > > >        at com.google.net.rpc.RpcService.runUntilServerShutdown
> > > > > (RpcService.java:251)
> > > > >        at com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run
> > > > > (JavaRuntime.java:374)
> > > > >        at java.lang.Thread.run(Unknown Source)
> > > > > Caused by:java.lang.ArrayStoreException: [Ljava.lang.String;
> > > > >        at java.io.ObjectInputStream.readArray(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readObject0(Unknown Source)
> > > > >        at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readSerialData(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readObject0(Unknown Source)
> > > > >        at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readSerialData(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readObject0(Unknown Source)
> > > > >        at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readSerialData(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readObject0(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readObject(Unknown Source)
> > > > >        at java.util.HashMap.readObject(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.invokeReadObject(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readSerialData(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readObject0(Unknown Source)
> > > > >        at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readSerialData(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readObject0(Unknown Source)
> > > > >        at java.io.ObjectInputStream.readObject(Unknown Source)
> > > > >        at
> > > com.google.apphosting.runtime.jetty.SessionManager.deserialize
> > > > > (SessionManager.java:358)
> > > > >        at
> > > com.google.apphosting.runtime.jetty.SessionManager.loadSession
> > > > > (SessionManager.java:280)
> > > > >        at 
> > > > > com.google.apphosting.runtime.jetty.SessionManager.getSession
> > > > > (SessionManager.java:255)
> > > > >        at
> > > org.mortbay.jetty.servlet.AbstractSessionManager.getHttpSession
> > > > > (AbstractSessionManager.java:237)
> > > > >        at org.mortbay.jetty.Request.getSession(Request.java:998)
> > > > >        at org.mortbay.jetty.servlet.SessionHandler.handle
> > > > > (SessionHandler.java:192)
> > > > >        at org.mortbay.jetty.handler.ContextHandler.handle
> > > > > (ContextHandler.java:712)
> > > > >        at
> > > org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:
> > > > > 405)
> > > > >        at
> > > com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle
> > > > > (AppVersionHandlerMap.java:237)
> > > > >        ... 27 more- Hide
>
> ...
>
> read more »
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to google-appengine-java@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to