History | Log In     View a printable version of the current page. Get help!  
Issue Details (XML | Word)

Key: STS-327
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Tim Fennell
Reporter: Tim Fennell
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Stripes

SimpleMessage is not Serializable

Created: 08/Jan/07 07:12 PM   Updated: 17/Mar/07 01:11 PM
Component/s: Validation
Affects Version/s: Release 1.4.2
Fix Version/s: Release 1.4.3


 Description  « Hide
I have been using Stripes for a couple of weeks, and am impressed so far - I
think I will be sticking with it.

As you probably know, when hot deploying, Tomcat will serialize sessions to
disk and reload them. With Stripes, I am frequently (about 75% of the time)
getting an exception like the following:

[ERROR] (StandardManager.doLoad():411) IOException while loading persisted
sessions: java.io.WriteAbortedException: writing aborted;
java.io.NotSerializableException: net.sourceforge.stripes.action.SimpleMessage
java.io.WriteAbortedException: writing aborted;
java.io.NotSerializableException: net.sourceforge.stripes.action.SimpleMessage
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1303)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:339)
        at java.util.ArrayList.readObject(ArrayList.java:587)
etc...

As a result, my login session is terminated, as Tomcat can't reload my session.

I'm not using flash scope at all, but every now and then the stack trace is
preceded with:

[ WARN] (StandardSession.writeObject():1451) Cannot serialize session
attribute __flash_scopes for session 498F......

Any ideas? It sounds like some SimpleMessages are being stored in flash scope,
and are unable to be written out. Is there any reason why SimpleMessage can't
implement Serializable?

 All   Comments   Change History      Sort Order:
Tim Fennell [08/Jan/07 07:16 PM]
I made the Message interface extend Serializable in order to mark all message classes as Serializable.