Re: Exception with Tomcat's session restore capability

From: Mike Kienenberger (mkienen..mail.com)
Date: Mon Sep 11 2006 - 16:49:12 EDT

  • Next message: Dave Dombrosky: "Re: Exception with Tomcat's session restore capability"

    No, I wouldn't try changing the transient nature.

    It does seem kinda odd, though. I know that I'm saving serialized
    objects two different ways -- by individual DataObject for one
    read-only context, and by DataContext for a modified set of objects.
    I don't think I have seen this particular problem.

    Are you serializing the DataContext directly?

    On 9/11/06, Dave Dombrosky <dombr..mail.com> wrote:
    > I downloaded the 1.2.1 source and added some code to figure out what
    > is going on. It appears that context.getChannel() from
    > ObjectStore.java line 945 is returning null. I am guessing that this
    > is because of DataContext line 182 which declares the channel to be
    > transient. Transient properties are not serialized, which is how
    > tomcat saves the session, so it is reverting back to it's default
    > value (null).
    >
    > I tried removing the "transient" part of the variable declaration, but
    > then Tomcat complains on a different piece of code. I'm not even sure
    > if that's the best way to fix it so I don't think I'll explore that
    > any further yet. Is this issue something that I should add to JIRA?
    >
    > -Dave
    >
    > On 9/11/06, Mike Kienenberger <mkienen..mail.com> wrote:
    > > My suggestion would be to look at the 1.2.1 source and see what's
    > > going on at ObjectStore.java, line 945.
    > >
    > > On 9/11/06, Dave Dombrosky <dombr..mail.com> wrote:
    > > > Problem still occurs on 1.2.1
    > > >
    > > > On 9/11/06, Mike Kienenberger <mkienen..mail.com> wrote:
    > > > > Maybe http://issues.apache.org/cayenne/browse/CAY-614 ?
    > > > >
    > > > > This was fixed for 1.2.1. It might be related.
    > > > >
    > > > > On 9/11/06, Dave Dombrosky <dombr..mail.com> wrote:
    > > > > > I am currently having problems when trying to use Cayenne 1.2 along
    > > > > > with Tomcat's (v5.0.28) session restore capability. That is to say,
    > > > > > if I deploy new code and restart tomcat, it saves the session data
    > > > > > instead of starting with all new sessions when it starts up.
    > > > > >
    > > > > > My problem is that I used to be able to restart and stay logged in
    > > > > > using version 1.1. Version 1.2 seems to have problems with trying to
    > > > > > look up data after I have restarted Tomcat, and I get this stack trace
    > > > > > caused by a NullPointerException:
    > > > > >
    > > > > > org.objectstyle.cayenne.access.ObjectStore.resolveHollow(ObjectStore.java:945)
    > > > > > org.objectstyle.cayenne.access.DataContext.prepareForAccess(DataContext.java:1842)
    > > > > > org.objectstyle.cayenne.CayenneDataObject.readProperty(CayenneDataObject.java:238)
    > > > > >
    > > > > > I couldn't find anyone else with this problem, so I assume I am doing
    > > > > > something wrong and it's not a bug. Any ideas?
    > > > > >
    > > > > > -Dave
    > > > > >
    > > > >
    > > >
    > >
    >



    This archive was generated by hypermail 2.0.0 : Mon Sep 11 2006 - 16:49:35 EDT