I think you are dead on there, Ben. So, what is the solution? If it were me, I'd ditch the lazy loading, but I am a session abuser.
;-) Larry On 1/2/06, Ben Munat <[EMAIL PROTECTED]> wrote: > Hello, > > I'm getting the NotSerializableException on > com.ibatis....loader.LazyResultLoader when I restart tomcat and it tries to > write/read the serialized http session. The only discussion of this I've > found in the mailing list is this message > Clinton posted back in November: > > "Unfortunately you can't mix lazy loading with serializable caches.... > > This is not an iBATIS problem, but more of a CGLIB and/or Java problem. I'm > sure we could find some crazy means of > managing this, but I'd rather not. The real solution is to tell Sun that we > want dynamic proxies for classes, just like > we have for interfaces....and we want them to be serializable." > > So, does "serializable cache" include the http session? I'm not trying to do > anything fancy, but I wouldn't mind being > able to leave the lazy loading turned on either. > > Also, to make sure I'm understanding this... the reason why an Ibatis class > is being dragged into the serialization in > the first place is because lazy loading uses dynamic proxies, right? So my > domain objects are being wrapped with this > proxy that catches a call for a child and invokes the query on the Ibatis > code to get the necessary data? And then, when > tomcat goes to serialize the domain object, it's actually getting the proxy > and so it tries to serialize the ibatis > class.... right? > > If so, then I suppose that I either have to somehow not put my domain objects > in the session or turn off lazy loading. > Am I on track here? > > Ben > > >
