Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 345604 - Make SessionStoreImpl serializable
Summary: Make SessionStoreImpl serializable
Status: RESOLVED FIXED
Alias: None
Product: RAP
Classification: RT
Component: RWT (show other bugs)
Version: unspecified   Edit
Hardware: All All
: P3 enhancement (vote)
Target Milestone: 1.5 M1   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on: 344333
Blocks: 342407
  Show dependency tree
 
Reported: 2011-05-12 10:13 EDT by Rüdiger Herrmann CLA
Modified: 2011-05-19 08:33 EDT (History)
0 users

See Also:


Attachments
Patch (16.12 KB, patch)
2011-05-19 05:56 EDT, Rüdiger Herrmann CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Rüdiger Herrmann CLA 2011-05-12 10:13:16 EDT
The SessionStoreImpl is help in a session-attribute and thus must implement java.io.Serializable and comply with the requirements for serializable objects to allow RWT sessions to be clustered.
Particularly nasty is the fact that SessionStoreImpl hold a reference to the HttpSession (which naturally cannot be migrated between cluster nodes). Therefore we need to find a way to re-attach a SessionStoreImpl to the HttpSession after it was deserialized but before it is made available on the new cluster node..
Comment 1 Rüdiger Herrmann CLA 2011-05-19 05:56:10 EDT
Created attachment 196092 [details]
Patch

This patch marks SessionStoreImpl as serializable. Except for httpSession and shutdownAdapter all fields are serialized.
As it doesn't make sense to serialize the httpSession, a new method attachHttpSession() was introduced to re-attach a session store to a http session.
The shutdownAdapter is only used in conjunction with the UI thread where sessions cannot be serialized anyway.
Comment 2 Rüdiger Herrmann CLA 2011-05-19 08:33:55 EDT
Applied patch to CVS HEAD.