cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mike Kienenberger <>
Subject Re: Session Replication
Date Wed, 05 May 2010 21:27:39 GMT
I did find some tests written which explicitly serialized DataContext.
Apparently I was serializing DataContext at one point, and had some
issue where creating a data object, then deleting that data object
without committing, and it was causing an issue with serialized

On Wed, May 5, 2010 at 5:10 PM, Mike Kienenberger <> wrote:
> Hmm.   Unfortunately, I can't remember if my issue with that project
> was that the DataContext wasn't being serialized or that it was and I
> didn't want it to.  And this was 1.2, so the behavior may have changed
> since then.
> But in either case, it seems pretty trivial.
> In the case of it being serialized, it already does what you want
> In the case of it not being serialized, you'd create a new DataContext
> and dump in all of the serialized objects you had from the original
> DataContext.
> I don't think there's any state that needs to be saved for a
> DataContext other than the DataObjects it contains.   Maybe you'd also
> need to save the initial fetched object snapshots if you were working
> with optimistic locking.
> All I can say for sure is that I did a JSF project where we saved the
> uncommitted DataObjects out as client-side data (serialized into the
> generated html), then read them back in on the next request.   The
> data would survive application restarts, so it should be equivalent to
> moving it to another session or another server.
> I tried glancing through what project source code I had laying around,
> but I couldn't find the code that dealt with the serialization -- too
> many project modules to look through.
> On Wed, May 5, 2010 at 4:57 PM, Michael Gentry <> wrote:
>> My experience with Tapestry (4 & 5) serializing a DataObject to the
>> HTML (which it does by default when you have a loop in a form) is that
>> the deserializing of the DataObject (on the subsequent
>> request/response) gives you a DataObject that is disassociated from
>> the DataContext (not good).  Perhaps if the DataContext went along for
>> the ride all would be well ...
>> Thanks,
>> mrg
>> On Wed, May 5, 2010 at 4:53 PM, Mike Kienenberger <> wrote:
>>> No direct experience, but I know you can serialize DataObjects and I'm
>>> 99% certain you can serialize DataContexts.   I think I did this in
>>> one project in the past to preserve state between requests rather than
>>> saving state in the sessions.
>>> On Wed, May 5, 2010 at 4:37 PM, Michael Gentry <>
>>>> Someone on another project here asked me if Cayenne works with session
>>>> replication (with 1+ user DataContext objects in the HttpSession)
>>>> between application servers (such as JBoss).  They have a project
>>>> where they are running N instances of JBoss and they replicate/sync
>>>> the session data across the JBoss instances.  They are curious if the
>>>> DataContext + DataObjects will replicate correctly.  I've never
>>>> attempted to do so and am not sure.  Does anyone have experience with
>>>> this?
>>>> Thanks!
>>>> mrg

View raw message