Blake/Matthias, I have provided a new patch which uses the TransientHolder wrapper.Thanks for your comments and suggestions.
Thanks, Abhi On Thu, Aug 20, 2009 at 6:18 PM, Abhijit Ghosh <[email protected]>wrote: > I will submit a new patch using the TransientHolder utility as I think that > would be more elegant in terms of code changes. > > -- Abhi > > > On Thu, Aug 20, 2009 at 3:32 PM, Abhijit Ghosh > <[email protected]>wrote: > >> Yes,I saw that class,but essentially I am doing the same thing as that >> class.I can re-implement it using TransientHolder if that is preferable. >> >> Thanks, >> Abhi >> >> >> On Thu, Aug 20, 2009 at 3:15 PM, Matthias Wessendorf >> <[email protected]>wrote: >> >>> On Thu, Aug 20, 2009 at 11:33 AM, Abhijit >>> Ghosh<[email protected]> wrote: >>> > Blake, >>> > Please find my response inline: >>> > >>> > On Wed, Aug 19, 2009 at 8:40 PM, Blake Sullivan < >>> [email protected]> >>> > wrote: >>> >> >>> >> Abhijit S Ghosh (JIRA) said the following On 8/19/2009 6:32 AM PT: >>> >>> >>> >>> XMLMenuModel data structures are not fully serializable. >>> >>> -------------------------------------------------------- >>> >>> >>> >>> Key: TRINIDAD-1557 >>> >>> URL: >>> https://issues.apache.org/jira/browse/TRINIDAD-1557 >>> >>> Project: MyFaces Trinidad >>> >>> Issue Type: Bug >>> >>> Reporter: Abhijit S Ghosh >>> >>> >>> >>> >>> >>> XMLMenuModel data structures are not fully serializable,which causes >>> >>> problems during session state replication in high availability >>> >>> environments,if subclasses use session to cache menu data >>> structures.This >>> >>> will also create problems during normal serialization. >>> >>> The data structure object hierarchy should be made completely >>> >>> serializable. >>> >>> >>> >>> >>> >> >>> >> Abhijit, >>> >> >>> >> Do we really need the structure to be Serializable? If we can rebuild >>> the >>> >> structure after fail-over, it is preferable to use a TransientHolder >>> to hold >>> >> a reference to the unserializable structure and then lazily rebuild >>> the >>> >> structure if necessary. >>> > >>> > That is what I am doing here.The non-serializable references have been >>> > marked as transient and the tree model is rebuilt by reading the xml >>> stream >>> > again.So actually no serialization happens.I blow away the cache when I >>> > detect a deserialized tree and rebuild the cache. >>> >>> I think Blake was talking about this class: >>> >>> >>> http://myfaces.apache.org/trinidad/trinidad-api/apidocs/org/apache/myfaces/trinidad/util/TransientHolder.html >>> >>> > >>> > Thanks, >>> > Abhi >>> > >>> >> >>> >> >>> >> -- Blake Sullivan >>> >> >>> > >>> > >>> >>> >>> >>> -- >>> Matthias Wessendorf >>> >>> blog: http://matthiaswessendorf.wordpress.com/ >>> sessions: http://www.slideshare.net/mwessendorf >>> twitter: http://twitter.com/mwessendorf >>> >> >> >
