Hi there:
When I make a deploy, I have the problem that if I make changes to classes
that where serialized as part of the session (this is natural in a wicket
app, as it is mine), every user that was already logged from before the
deploy gets this ugly "local class incompatible" error, which to make things
worse is not possible to catch by the app, and the user only sees an empty
white page.
The error makes sense, but I'd like to ask:
- Is there a way I can programatically (or from the admin console would be
best) make all session cookies expire?
- Would it be possible to make this exception "cacheable" by the app, so we
can at least show some proper message?
At the end of this email I'm adding the exception stack trace.
Thanks in advance,
Esteban
-------------------------------------------------------------------------
Caused by: java.io.InvalidClassException: ar.com.blah.BaseLayoutPage;
local class incompatible: stream classdesc serialVersionUID =
3862527510678469715, local class serialVersionUID =
3079699908378169712
at java.io.ObjectStreamClass.initNonProxy(Unknown Source)
at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
at java.io.ObjectInputStream.readClassDesc(Unknown Source)
at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
at java.io.ObjectInputStream.readClassDesc(Unknown Source)
at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
at java.io.ObjectInputStream.readClassDesc(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:385)
--
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 [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-java?hl=en.