Tomcat is doing the serialization of the session internally when it restarts, so I have no idea how it does it. I don't know much about serialization, but I would be able to look into it if I knew what I should be investigating.
On 9/11/06, Mike Kienenberger <[EMAIL PROTECTED]> wrote:
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 <[EMAIL PROTECTED]> 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 <[EMAIL PROTECTED]> 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 <[EMAIL PROTECTED]> wrote: > > > Problem still occurs on 1.2.1 > > > > > > On 9/11/06, Mike Kienenberger <[EMAIL PROTECTED]> 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 <[EMAIL PROTECTED]> 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 > > > > > > > > > > > > > > >
