No, not yet, sorry. I'll try this weekend. Clinton
On 1/26/07, Paul Benedict <[EMAIL PROTECTED]> wrote:
Clinton, Have you gotten a chance to test out the example? I believe an easy fix to the CGLIB proxy could be made. Paul Niels Beekman wrote: > We had exactly the same issue, calling a method from within the > constructor triggers "lazy" loading, which obviously isn't very lazy > anymore. > > We ended up adding enhancer.setInterceptDuringConstruction(false) where > an Enhancer-object is constructed (2 times in EnhancedLazyResultLoader). > > This could however cause problems when you are accessing uninitialized > variables (not loaded from DB), but we're fine with that. > > HTH, > > Niels > > -----Original Message----- > From: Paul Benedict [mailto:[EMAIL PROTECTED] On Behalf Of > Paul Benedict > Sent: dinsdag 23 januari 2007 5:05 > To: User Ibatis > Subject: Odd behavior with CGLIB > > Can someone tell me if this is a bug in iBATIS: > > I turned on lazy loading of a class. In the constructor of the object, I > > called a protected method to initialize some properties. Example: > > public MyClassConstructor() { > setId(-1); > } > > Because I called a method, iBATIS marked this class has "loaded" but it > was never really loaded. Only by replacing setId(-1) with this.id = -1; > was I able to prevent the "loaded" variable from being immediately set. > > I believe there is some sort of sequencing error here. The class should > not be considered initialized until after the constructor returns. > Thoughts? > > Paul > >