|
From: <jue...@we...> - 2003-12-11 15:54:13
|
On a related note, the iBATIS Database Layer 1.2.8 (as used by our = JPetStore version) requires CGLIB 1.0. But as I said, this doesn't = matter as long as you don't use CGLIB-based AOP proxies (which we don't = in our JPetStore version). It's worth mentioning in the release notes, = though. Juergen -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of j=FCrgen h=F6ller [werk3AT] Sent: Thursday, December 11, 2003 4:14 PM To: spr...@li... Subject: [Springframework-developer] RE: About CGLIB2 Everybody, Hibernate 2.1 final with CGLIB2 underneath has just been released. This = poses the question whether we should still release our 1.0 M4 with = CGLIB1 support. Of course, our current codebase works nicely with = Hibernate 2.1 as long as you don't use CGLIB-based AOP proxies (i.e. = proxy full target objects instead of just interfaces), so we don't = *have* to update immediately. Migrating our AOP proxy generation to CGLIB2 should be straightforward. = Afterwards, it will be the other way round in terms of compatibility: = Hibernate 2.0 will still work with a current Spring release as long as = you don't use CGLIB-based AOP proxies. In any case, the most important = rule is to just have the CGLIB version needed by your Hibernate version = in the class path. CGLIB2 is at RC1 in the meantime, so building on it now would be viable. = In the face of this situation, does everybody still prefer deferred = CGLIB2 support at the time of our RC1? I vote for migrating already in = M4, to allow for CGLIB-based AOP proxies in combination with Hibernate = 2.1 promptly. After all, typical Spring users will choose to work with = the most current recommended Hibernate version. Not that this was a really important criterion, but nevertheless: Chris, = when do you expect CGLIB2 final? Juergen -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of Alef Arendsen (JTeam) Sent: Wednesday, December 03, 2003 11:20 PM To: spr...@li... Subject: About CGLIB2 (was: RE: [Springframework-developer] Release plan) Juergen (et al), So the current plan is: - M4 (CGLIB1): just before X-mas - RC1 (CGLIB2): 2nd week of January or something. Is there any idea on when CGLIB2 support is to be introduced (I heard supporting both of them at a time is a hassle or at least too much work). We've currently got a project (Spring + Hibernate 2.1) underway of which a initial release is targetted for the 12th of January. Are there going to be significant changes when moving from CGLIB1 to 2 (which will force me to stick with M4 for that particular project) or is it going to be a smooth transition without much impact? Thanks! Alef > -----Oorspronkelijk bericht----- > Van: spr...@li...=20 > [mailto:spr...@li...] > Namens j=FCrgen h=F6ller [werk3AT] > Verzonden: Tuesday, December 02, 2003 3:27 PM > Aan: spr...@li... > Onderwerp: [Springframework-developer] Release plan >=20 >=20 > Guys, >=20 > We need to settle on a concrete roadmap. >=20 > Despite our initial plans to go straight to RC1, I'm inclined=20 > to vote for an M4 in two weeks' time, with the significant=20 > reworkings that have been introduced in the meantime (in the=20 > bean factory and AOP area), with the current state of the=20 > docs, and still with CGLIB1. We can also introduce our=20 > JPetStore version with that release. >=20 > I suggest to target RC1 for early January then, with CGLIB2=20 > and - most importantly - a proper reference manual. In the=20 > ideal case, 1.0 final could be ready at the end of January.=20 > M4 would correspond to a feature freeze, with full=20 > concentration on bugfixes and docs afterwards. RC1 should=20 > already be as good as it gets, a true "release candidate". >=20 > Juergen >=20 >=20 > -----Original Message----- > From: spr...@li... > [mailto:spr...@li...] > On Behalf Of Matthew E. Porter > Sent: Monday, December 01, 2003 6:37 PM > To: spr...@li... > Subject: Re: [Springframework-developer] Hibernate 2.1 and CGLIB >=20 >=20 > This was a good answer since it provides a roadmap. Can someone post=20 > this on the wiki or the website for others who may have the same=20 > question? >=20 >=20 > Cheers, > matthew >=20 > On Dec 1, 2003, at 11:04 AM, j=FCrgen h=F6ller [werk3AT] wrote: >=20 > > Hi Matthew, > > > > We've been discussing that for a while. If Hibernate 2.1 gets final > > early enough (and it seems to, being already in RC1 stage), we will=20 > > switch to it for our 1.0 RCs. If 2.1 would still be far=20 > from final, we=20 > > would probably have to support both CGLIB1 and CGLIB2 somehow.=20 > > Fortunately, that seems not to be necessary anymore! > > > > For the time being, if you don't proxy full classes (but just > > interfaces) or don't use Spring AOP in the first place, you=20 > should be=20 > > able to work with Hibernate 2.1 and its CGLIB2 without hassle. The=20 > > same will apply to Hibernate 2.0 users after we've moved to CGLIB2:=20 > > You don't need to worry if you don't use Spring AOP will=20 > full proxies. > > > > I think we can live with requiring an update to Hibernate 2.1 if a > > user wants full AOP proxies in combination. Actually, we probably=20 > > *need* to move to CGLIB2 once Hibernate 2.1 final is=20 > released: Power=20 > > users will want to combine full Spring AOP proxying with=20 > the current=20 > > Hibernate version, not with a previous one. > > > > Now it would be really great if CGLIB2 were final too until=20 > Spring 1.0 > > final! :-) It's no problem to ship a CGLIB2 beta with our upcoming=20 > > Spring 1.0 RC1, but it worries me to include a CGLIB2 beta=20 > in Spring=20 > > 1.0 final. Haven't the Hibernate guys the same problem? Or are they=20 > > fine with shipping a CGLIB2 beta with Hibernate 2.1 final? > > > > So I suggest to release our 1.0 RC1 shortly after Hibernate=20 > 2.1 final, > > already with CGLIB2 support. As I said, we will just force=20 > users with=20 > > full AOP proxies to upgrade to Hibernate 2.1 if using the two in=20 > > combination. We could release a 1.0 M4 shortly before that though,=20 > > still with CGLIB1 - to ease migration paths for Hibernate 2.0 users. > > > > Juergen > > > > > > -----Original Message----- > > From: spr...@li... > > [mailto:spr...@li...]On=20 > > Behalf Of Matthew E. Porter > > Sent: Monday, December 01, 2003 5:06 PM > > To: spr...@li... > > Subject: [Springframework-developer] Hibernate 2.1 and CGLIB > > > > > > I have looked through the mailing list archives but was=20 > unable to find=20 > > the answer to my question. Will Spring move to support=20 > Hibernate 2.1=20 > > (as it is the new *recommended* version) and, if so, when? > > > > Also, does anyone know if I can use it now with the cglib version=20 > > change? > > > > > > > > Cheers, > > matthew > > > > > > > > ------------------------------------------------------- > > This SF.net email is sponsored by: SF.net Giveback Program. Does=20 > > SourceForge.net help you be more productive? Does it help=20 > you create=20 > > better code? SHARE THE LOVE, and help us help YOU! Click Here:=20 > > http://sourceforge.net/donate/=20 > > _______________________________________________ > > Springframework-developer mailing list=20 > > Spr...@li... > >=20 > https://lists.sourceforge.net/lists/listinfo/s> pringframework-developer > > > > > > ------------------------------------------------------- > > This SF.net email is sponsored by: SF.net Giveback Program. Does=20 > > SourceForge.net help you be more productive? Does it help=20 > you create=20 > > better code? SHARE THE LOVE, and help us help YOU! Click Here:=20 > > http://sourceforge.net/donate/=20 > > _______________________________________________ > > Springframework-developer mailing list=20 > > Spr...@li... > >=20 > https://lists.sourceforge.net/lists/listinfo/s> pringframework-developer >=20 >=20 >=20 > ------------------------------------------------------- > This SF.net email is sponsored by: SF.net Giveback Program.=20 > Does SourceForge.net help you be more productive? Does it=20 > help you create better code? SHARE THE LOVE, and help us=20 > help YOU! Click Here: http://sourceforge.net/donate/=20 > _______________________________________________ > Springframework-developer mailing list=20 > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer >=20 >=20 > ------------------------------------------------------- > This SF.net email is sponsored by: SF.net Giveback Program.=20 > Does SourceForge.net help you be more productive? Does it=20 > help you create better code? SHARE THE LOVE, and help us=20 > help YOU! Click Here: http://sourceforge.net/donate/=20 > _______________________________________________ > Springframework-developer mailing list=20 > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer >=20 ------------------------------------------------------- This SF.net email is sponsored by OSDN's Audience Survey. Help shape OSDN's sites and tell us what you think. Take this five minute survey and you could win a $250 Gift Certificate. http://www.wrgsurveys.com/2003/osdntech03.php?site=3D _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for = IBM's Free Linux Tutorials. Learn everything from the bash shell to sys = admin. Click now! http://ads.osdn.com/?ad_id=1278&alloc_id371&op=3Dick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: <jue...@we...> - 2003-12-11 17:58:55
|
I've just fixed it by re-introducing an inner class CglibProxyFactory: = Grab the current AdvisedSupport from CVS, and a JDK proxy will work with = Hibernate 2.1 - without the need for cglib1.jar in the class path. I've = tested it with Petclinic, and it works nicely. We should stick to that inner-class strategy when migrating to CGLIB2, = to let people use Hibernate 2.0.x or iBATIS Database Layer (with CGLIB1 = underneath). Juergen -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of Rod Johnson Sent: Thursday, December 11, 2003 6:42 PM To: spr...@li... Subject: Re: [Springframework-developer] RE: About CGLIB2 I guess in my refactoring I lost the indirection by which a CGLIB proxy = was created only by an inner class, to prevent dependence on CGLIB at = runtime. I'll try to sort that out tomorrow or Monday. Btw, the TransactionProxyFactoryBean now extends the new ProxyConfig, = which has a proxyTargetClass property that defaults to false. Set it to true = to force CGLIB. Otherwise it won't use CGLIB by default. Regards, Rod ----- Original Message -----=20 From: "Colin Sampaleanu" <col...@ex...> To: <spr...@li...> Sent: Thursday, December 11, 2003 5:29 PM Subject: Re: [Springframework-developer] RE: About CGLIB2 > j=FCrgen h=F6ller [werk3AT] wrote: > > >Everybody, > > > >Hibernate 2.1 final with CGLIB2 underneath has just been released. = This poses the question whether we should still release our 1.0 M4 with = CGLIB1 support. Of course, our current codebase works nicely with Hibernate 2.1 = as long as you don't use CGLIB-based AOP proxies (i.e. proxy full target objects instead of just interfaces), so we don't *have* to update immediately. > > > > > > > Hmm, maybe this was once the case, but I am not sure it is so easy any > longer. I tried dropping in Hibernate 2.1 final (with cglib2). = However, > when using TransactionProxyFactoryBean, which no longer has the old > ProxyInterfacesOnly boolean option (which used to default to true, and > used a JDK proxy in the true case instead of cglib proxy), I now get = an > exception > > java.lang.NoClassDefFoundError: > org/springframework/aop/framework/OptimizedCglib1AopProxy > at > org.springframework.transaction.interceptor.TransactionProxyFactoryBean.a= fte rPropertiesSet(TransactionProxyFactoryBean.java:167) > at > org.springframework.beans.factory.support.AbstractBeanFactory.callLifecyc= leM ethodsIfNecessary(AbstractBeanFactory.java:1011) > at > org.springframework.beans.factory.support.AbstractBeanFactory.createBean(= Abs tractBeanFactory.java:539) > at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Abs= tra ctBeanFactory.java:186) > at > org.springframework.beans.factory.support.DefaultListableBeanFactory.preI= nst antiateSingletons(DefaultListableBeanFactory.java:184) > at > org.springframework.context.support.AbstractApplicationContext.refresh(Ab= str actApplicationContext.java:284) > at > org.springframework.web.context.support.XmlWebApplicationContext.refresh(= Xml WebApplicationContext.java:107) > > The offending line is: > > ProxyFactory proxyFactory =3D new ProxyFactory(); > > Of course, ProxyFactory extends AdvisedSupport, which directly > references OptimizedCglib1AopProxy. > > > > > ------------------------------------------------------- > This SF.net email is sponsored by: IBM Linux Tutorials. > Become an expert in LINUX or just sharpen your skills. Sign up for = IBM's > Free Linux Tutorials. Learn everything from the bash shell to sys = admin. > Click now! = http://ads.osdn.com/?ad_id=3D1278&alloc_id=3D3371&op=3Dclick > _______________________________________________ > Springframework-developer mailing list > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for = IBM's Free Linux Tutorials. Learn everything from the bash shell to sys = admin. Click now! http://ads.osdn.com/?ad_id=1278&alloc_id371&op=3Dick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: Rod J. <rod...@in...> - 2003-12-11 18:12:06
|
Juergen, Thanks (I think). That's weird: did you commit it? I can't see it. ----- Original Message -----=20 From: "j=FCrgen h=F6ller [werk3AT]" <jue...@we...> To: <spr...@li...> Sent: Thursday, December 11, 2003 5:57 PM Subject: RE: [Springframework-developer] RE: About CGLIB2 I've just fixed it by re-introducing an inner class CglibProxyFactory: Gr= ab the current AdvisedSupport from CVS, and a JDK proxy will work with Hibernate 2.1 - without the need for cglib1.jar in the class path. I've tested it with Petclinic, and it works nicely. We should stick to that inner-class strategy when migrating to CGLIB2, to let people use Hibernate 2.0.x or iBATIS Database Layer (with CGLIB1 underneath). Juergen -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of Rod Johnson Sent: Thursday, December 11, 2003 6:42 PM To: spr...@li... Subject: Re: [Springframework-developer] RE: About CGLIB2 I guess in my refactoring I lost the indirection by which a CGLIB proxy w= as created only by an inner class, to prevent dependence on CGLIB at runtime. I'll try to sort that out tomorrow or Monday. Btw, the TransactionProxyFactoryBean now extends the new ProxyConfig, whi= ch has a proxyTargetClass property that defaults to false. Set it to true to force CGLIB. Otherwise it won't use CGLIB by default. Regards, Rod ----- Original Message -----=20 From: "Colin Sampaleanu" <col...@ex...> To: <spr...@li...> Sent: Thursday, December 11, 2003 5:29 PM Subject: Re: [Springframework-developer] RE: About CGLIB2 > j=FCrgen h=F6ller [werk3AT] wrote: > > >Everybody, > > > >Hibernate 2.1 final with CGLIB2 underneath has just been released. Thi= s poses the question whether we should still release our 1.0 M4 with CGLIB1 support. Of course, our current codebase works nicely with Hibernate 2.1 = as long as you don't use CGLIB-based AOP proxies (i.e. proxy full target objects instead of just interfaces), so we don't *have* to update immediately. > > > > > > > Hmm, maybe this was once the case, but I am not sure it is so easy any > longer. I tried dropping in Hibernate 2.1 final (with cglib2). However, > when using TransactionProxyFactoryBean, which no longer has the old > ProxyInterfacesOnly boolean option (which used to default to true, and > used a JDK proxy in the true case instead of cglib proxy), I now get an > exception > > java.lang.NoClassDefFoundError: > org/springframework/aop/framework/OptimizedCglib1AopProxy > at > org.springframework.transaction.interceptor.TransactionProxyFactoryBean.a= fte rPropertiesSet(TransactionProxyFactoryBean.java:167) > at > org.springframework.beans.factory.support.AbstractBeanFactory.callLifecyc= leM ethodsIfNecessary(AbstractBeanFactory.java:1011) > at > org.springframework.beans.factory.support.AbstractBeanFactory.createBean(= Abs tractBeanFactory.java:539) > at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Abs= tra ctBeanFactory.java:186) > at > org.springframework.beans.factory.support.DefaultListableBeanFactory.preI= nst antiateSingletons(DefaultListableBeanFactory.java:184) > at > org.springframework.context.support.AbstractApplicationContext.refresh(Ab= str actApplicationContext.java:284) > at > org.springframework.web.context.support.XmlWebApplicationContext.refresh(= Xml WebApplicationContext.java:107) > > The offending line is: > > ProxyFactory proxyFactory =3D new ProxyFactory(); > > Of course, ProxyFactory extends AdvisedSupport, which directly > references OptimizedCglib1AopProxy. > > > > > ------------------------------------------------------- > This SF.net email is sponsored by: IBM Linux Tutorials. > Become an expert in LINUX or just sharpen your skills. Sign up for IBM= 's > Free Linux Tutorials. Learn everything from the bash shell to sys admi= n. > Click now! http://ads.osdn.com/?ad_id=3D1278&alloc_id=3D3371&op=3Dclick > _______________________________________________ > Springframework-developer mailing list > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id=1278&alloc_id371&op=3Dick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id=1278&alloc_id371&op=3Dick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: Colin S. <col...@ex...> - 2003-12-11 18:42:07
|
This works fine now without the cglib1 jar. I agree with using the inner-class strategy for a while. We should probably limit the period of time we do this though; there are a lot of useful features in cglib2, and it doesn't make sense to ignore them or have to jump through hoops to use them, for too long a period of time, considering the only real beneficiaries will be Hibernate 2.0 users, who are going to be a rapidly dying breed. Regards, jürgen höller [werk3AT] wrote: >I've just fixed it by re-introducing an inner class CglibProxyFactory: Grab the current AdvisedSupport from CVS, and a JDK proxy will work with Hibernate 2.1 - without the need for cglib1.jar in the class path. I've tested it with Petclinic, and it works nicely. > >We should stick to that inner-class strategy when migrating to CGLIB2, to let people use Hibernate 2.0.x or iBATIS Database Layer (with CGLIB1 underneath). > >Juergen > > >-----Original Message----- >From: spr...@li... >[mailto:spr...@li...]On Behalf >Of Rod Johnson >Sent: Thursday, December 11, 2003 6:42 PM >To: spr...@li... >Subject: Re: [Springframework-developer] RE: About CGLIB2 > > >I guess in my refactoring I lost the indirection by which a CGLIB proxy was >created only by an inner class, to prevent dependence on CGLIB at runtime. >I'll try to sort that out tomorrow or Monday. > >Btw, the TransactionProxyFactoryBean now extends the new ProxyConfig, which >has a proxyTargetClass property that defaults to false. Set it to true to >force CGLIB. Otherwise it won't use CGLIB by default. > >Regards, >Rod > >----- Original Message ----- >From: "Colin Sampaleanu" <col...@ex...> >To: <spr...@li...> >Sent: Thursday, December 11, 2003 5:29 PM >Subject: Re: [Springframework-developer] RE: About CGLIB2 > > > > >>jürgen höller [werk3AT] wrote: >> >> >> >>>Everybody, >>> >>>Hibernate 2.1 final with CGLIB2 underneath has just been released. This >>> >>> >poses the question whether we should still release our 1.0 M4 with CGLIB1 >support. Of course, our current codebase works nicely with Hibernate 2.1 as >long as you don't use CGLIB-based AOP proxies (i.e. proxy full target >objects instead of just interfaces), so we don't *have* to update >immediately. > > >>> >>> >>> >>Hmm, maybe this was once the case, but I am not sure it is so easy any >>longer. I tried dropping in Hibernate 2.1 final (with cglib2). However, >>when using TransactionProxyFactoryBean, which no longer has the old >>ProxyInterfacesOnly boolean option (which used to default to true, and >>used a JDK proxy in the true case instead of cglib proxy), I now get an >>exception >> >>java.lang.NoClassDefFoundError: >>org/springframework/aop/framework/OptimizedCglib1AopProxy >> at >> >> >> >org.springframework.transaction.interceptor.TransactionProxyFactoryBean.afte >rPropertiesSet(TransactionProxyFactoryBean.java:167) > > >> at >> >> >> >org.springframework.beans.factory.support.AbstractBeanFactory.callLifecycleM >ethodsIfNecessary(AbstractBeanFactory.java:1011) > > >> at >> >> >> >org.springframework.beans.factory.support.AbstractBeanFactory.createBean(Abs >tractBeanFactory.java:539) > > >> at >> >> >> >org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Abstra >ctBeanFactory.java:186) > > >> at >> >> >> >org.springframework.beans.factory.support.DefaultListableBeanFactory.preInst >antiateSingletons(DefaultListableBeanFactory.java:184) > > >> at >> >> >> >org.springframework.context.support.AbstractApplicationContext.refresh(Abstr >actApplicationContext.java:284) > > >> at >> >> >> >org.springframework.web.context.support.XmlWebApplicationContext.refresh(Xml >WebApplicationContext.java:107) > > >>The offending line is: >> >> ProxyFactory proxyFactory = new ProxyFactory(); >> >>Of course, ProxyFactory extends AdvisedSupport, which directly >>references OptimizedCglib1AopProxy. >> >> |
|
From: <jue...@we...> - 2003-12-11 18:00:12
|
Of course, you can do that already if you're not proxying full classes = but just interfaces with our AOP framework - at least, you can do that = again now with the current version in CVS ;-) Juergen -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of Alef Arendsen Sent: Thursday, December 11, 2003 6:56 PM To: spr...@li... Subject: RE: [Springframework-developer] RE: About CGLIB2 YEAH!! +1 This means we can update to Hibernate 2.1 :) -----Original Message----- From: spr...@li... [mailto:spr...@li...] On Behalf Of tri...@tr... Sent: Thursday, December 11, 2003 4:47 PM To: spr...@li... Subject: Re: [Springframework-developer] RE: About CGLIB2 +1 Thomas Quoting Colin Sampaleanu <col...@ex...>: > I vote for updating to cglib2 now. I do realize different people have > other criteria/priorities, but we've been using Hibenate 2.1betas with > Spring since August, with no issues, and ideally would want to move to > the final version. >=20 > My feeling is that most Hibernate users have already switched to 2.1,=20 > or > will do so very soon, as there are no backwards compatibility issues=20 > with doing so, and some strong advantages. >=20 >=20 > j=FCrgen h=F6ller [werk3AT] wrote: >=20 > >Everybody, > > > >Hibernate 2.1 final with CGLIB2 underneath has just been released.=20 > >This > poses the question whether we should still release our 1.0 M4 with=20 > CGLIB1 support. Of course, our current codebase works nicely with=20 > Hibernate 2.1 as long as you don't use CGLIB-based AOP proxies (i.e.=20 > proxy full target objects instead of just interfaces), so we don't=20 > *have* to update immediately. > > > >Migrating our AOP proxy generation to CGLIB2 should be=20 > >straightforward. > Afterwards, it will be the other way round in terms of compatibility:=20 > Hibernate 2.0 will still work with a current Spring release as long as > you don't use CGLIB-based AOP proxies. In any case, the most important > rule is to just have the CGLIB version needed by your Hibernate=20 > version in the class path. > > > >CGLIB2 is at RC1 in the meantime, so building on it now would be=20 > >viable. In > the face of this situation, does everybody still prefer deferred=20 > CGLIB2 support at the time of our RC1? I vote for migrating already in > M4, to allow for CGLIB-based AOP proxies in combination with Hibernate > 2.1 promptly. After all, typical Spring users will choose to work with > the most current recommended Hibernate version. > > > >Not that this was a really important criterion, but nevertheless:=20 > >Chris, > when do you expect CGLIB2 final? > > > >Juergen > > > > > >-----Original Message----- > >From: spr...@li... > >[mailto:spr...@li...]On=20 > >Behalf Of Alef Arendsen (JTeam) > >Sent: Wednesday, December 03, 2003 11:20 PM > >To: spr...@li... > >Subject: About CGLIB2 (was: RE: [Springframework-developer] Release > >plan) > > > > > >Juergen (et al), > > > >So the current plan is: > > > >- M4 (CGLIB1): just before X-mas > >- RC1 (CGLIB2): 2nd week of January or something. > > > >Is there any idea on when CGLIB2 support is to be introduced (I heard > >supporting both of them at a time is a hassle or at least too much=20 > >work). We've currently got a project (Spring + Hibernate 2.1)=20 > >underway of which a initial release is targetted for the 12th of=20 > >January. > > > >Are there going to be significant changes when moving from CGLIB1 to=20 > >2 (which will force me to stick with M4 for that particular project)=20 > >or is it going to be a smooth transition without much impact? > > > >Thanks! > > > >Alef > > > > =20 > > > >>-----Oorspronkelijk bericht----- > >>Van: spr...@li... > >>[mailto:spr...@li...] > >> Namens j=FCrgen h=F6ller [werk3AT] > >>Verzonden: Tuesday, December 02, 2003 3:27 PM > >>Aan: spr...@li... > >>Onderwerp: [Springframework-developer] Release plan > >> > >> > >>Guys, > >> > >>We need to settle on a concrete roadmap. > >> > >>Despite our initial plans to go straight to RC1, I'm inclined > >>to vote for an M4 in two weeks' time, with the significant=20 > >>reworkings that have been introduced in the meantime (in the=20 > >>bean factory and AOP area), with the current state of the=20 > >>docs, and still with CGLIB1. We can also introduce our=20 > >>JPetStore version with that release. > >> > >>I suggest to target RC1 for early January then, with CGLIB2 > >>and - most importantly - a proper reference manual. In the=20 > >>ideal case, 1.0 final could be ready at the end of January.=20 > >>M4 would correspond to a feature freeze, with full=20 > >>concentration on bugfixes and docs afterwards. RC1 should=20 > >>already be as good as it gets, a true "release candidate". > >> > >>Juergen > >> > >> > >>-----Original Message----- > >>From: spr...@li... > >>[mailto:spr...@li...] > >>On Behalf Of Matthew E. Porter > >>Sent: Monday, December 01, 2003 6:37 PM > >>To: spr...@li... > >>Subject: Re: [Springframework-developer] Hibernate 2.1 and CGLIB > >> > >> > >>This was a good answer since it provides a roadmap. Can someone=20 > >>post > >>this on the wiki or the website for others who may have the same=20 > >>question? > >> > >> > >>Cheers, > >> matthew > >> > >>On Dec 1, 2003, at 11:04 AM, j=FCrgen h=F6ller [werk3AT] wrote: > >> > >> =20 > >> > >>>Hi Matthew, > >>> > >>>We've been discussing that for a while. If Hibernate 2.1 gets final > >>>early enough (and it seems to, being already in RC1 stage), we will > >>>switch to it for our 1.0 RCs. If 2.1 would still be far > >>> =20 > >>> > >>from final, we > >> =20 > >> > >>>would probably have to support both CGLIB1 and CGLIB2 somehow. > >>>Fortunately, that seems not to be necessary anymore! > >>> > >>>For the time being, if you don't proxy full classes (but just > >>>interfaces) or don't use Spring AOP in the first place, you > >>> =20 > >>> > >>should be > >> =20 > >> > >>>able to work with Hibernate 2.1 and its CGLIB2 without hassle. The > >>>same will apply to Hibernate 2.0 users after we've moved to CGLIB2: > >>>You don't need to worry if you don't use Spring AOP will=20 > >>> =20 > >>> > >>full proxies. > >> =20 > >> > >>>I think we can live with requiring an update to Hibernate 2.1 if a=20 > >>>user wants full AOP proxies in combination. Actually, we probably > >>>*need* to move to CGLIB2 once Hibernate 2.1 final is > >>> =20 > >>> > >>released: Power > >> =20 > >> > >>>users will want to combine full Spring AOP proxying with > >>> =20 > >>> > >>the current > >> =20 > >> > >>>Hibernate version, not with a previous one. > >>> > >>>Now it would be really great if CGLIB2 were final too until > >>> =20 > >>> > >>Spring 1.0 > >> =20 > >> > >>>final! :-) It's no problem to ship a CGLIB2 beta with our upcoming > >>>Spring 1.0 RC1, but it worries me to include a CGLIB2 beta=20 > >>> =20 > >>> > >>in Spring > >> =20 > >> > >>>1.0 final. Haven't the Hibernate guys the same problem? Or are they > >>>fine with shipping a CGLIB2 beta with Hibernate 2.1 final? > >>> > >>>So I suggest to release our 1.0 RC1 shortly after Hibernate > >>> =20 > >>> > >>2.1 final, > >> =20 > >> > >>>already with CGLIB2 support. As I said, we will just force > >>> =20 > >>> > >>users with > >> =20 > >> > >>>full AOP proxies to upgrade to Hibernate 2.1 if using the two in > >>>combination. We could release a 1.0 M4 shortly before that though,=20 > >>>still with CGLIB1 - to ease migration paths for Hibernate 2.0 users. > >>> > >>>Juergen > >>> > >>> > >>>-----Original Message----- > >>>From: spr...@li... > >>>[mailto:spr...@li...]On > >>>Behalf Of Matthew E. Porter > >>>Sent: Monday, December 01, 2003 5:06 PM > >>>To: spr...@li... > >>>Subject: [Springframework-developer] Hibernate 2.1 and CGLIB > >>> > >>> > >>>I have looked through the mailing list archives but was > >>> =20 > >>> > >>unable to find > >> =20 > >> > >>>the answer to my question. Will Spring move to support > >>> =20 > >>> > >>Hibernate 2.1 > >> =20 > >> > >>>(as it is the new *recommended* version) and, if so, when? > >>> > >>>Also, does anyone know if I can use it now with the cglib version > >>>change? > >>> > >>> > >>> > >>>Cheers, > >>> matthew > >>> > >>> =20 > >>> >=20 >=20 >=20 >=20 > ------------------------------------------------------- > This SF.net email is sponsored by: IBM Linux Tutorials. Become an=20 > expert in LINUX or just sharpen your skills. Sign up for IBM's Free=20 > Linux Tutorials. Learn everything from the bash shell to sys admin.=20 > Click now! = http://ads.osdn.com/?ad_id=3D1278&alloc_id=3D3371&op=3Dclick > _______________________________________________ > Springframework-developer mailing list=20 > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer >=20 ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! = http://ads.osdn.com/?ad_id=3D1278&alloc_id=3D3371&op=3Dclick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for = IBM's Free Linux Tutorials. Learn everything from the bash shell to sys = admin. Click now! http://ads.osdn.com/?ad_id=1278&alloc_id371&op=3Dick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: <jue...@we...> - 2003-12-11 18:19:25
|
My connection to SourceForge CVS is extremely bad at the moment - I had = to retry a few times, but AdvisedSupport is committed now. Juergen -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of Rod Johnson Sent: Thursday, December 11, 2003 7:12 PM To: spr...@li... Subject: Re: [Springframework-developer] RE: About CGLIB2 Juergen, Thanks (I think). That's weird: did you commit it? I can't see it. ----- Original Message -----=20 From: "j=FCrgen h=F6ller [werk3AT]" <jue...@we...> To: <spr...@li...> Sent: Thursday, December 11, 2003 5:57 PM Subject: RE: [Springframework-developer] RE: About CGLIB2 I've just fixed it by re-introducing an inner class CglibProxyFactory: = Grab the current AdvisedSupport from CVS, and a JDK proxy will work with Hibernate 2.1 - without the need for cglib1.jar in the class path. I've tested it with Petclinic, and it works nicely. We should stick to that inner-class strategy when migrating to CGLIB2, = to let people use Hibernate 2.0.x or iBATIS Database Layer (with CGLIB1 underneath). Juergen -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of Rod Johnson Sent: Thursday, December 11, 2003 6:42 PM To: spr...@li... Subject: Re: [Springframework-developer] RE: About CGLIB2 I guess in my refactoring I lost the indirection by which a CGLIB proxy = was created only by an inner class, to prevent dependence on CGLIB at = runtime. I'll try to sort that out tomorrow or Monday. Btw, the TransactionProxyFactoryBean now extends the new ProxyConfig, = which has a proxyTargetClass property that defaults to false. Set it to true = to force CGLIB. Otherwise it won't use CGLIB by default. Regards, Rod ----- Original Message -----=20 From: "Colin Sampaleanu" <col...@ex...> To: <spr...@li...> Sent: Thursday, December 11, 2003 5:29 PM Subject: Re: [Springframework-developer] RE: About CGLIB2 > j=FCrgen h=F6ller [werk3AT] wrote: > > >Everybody, > > > >Hibernate 2.1 final with CGLIB2 underneath has just been released. = This poses the question whether we should still release our 1.0 M4 with = CGLIB1 support. Of course, our current codebase works nicely with Hibernate 2.1 = as long as you don't use CGLIB-based AOP proxies (i.e. proxy full target objects instead of just interfaces), so we don't *have* to update immediately. > > > > > > > Hmm, maybe this was once the case, but I am not sure it is so easy any > longer. I tried dropping in Hibernate 2.1 final (with cglib2). = However, > when using TransactionProxyFactoryBean, which no longer has the old > ProxyInterfacesOnly boolean option (which used to default to true, and > used a JDK proxy in the true case instead of cglib proxy), I now get = an > exception > > java.lang.NoClassDefFoundError: > org/springframework/aop/framework/OptimizedCglib1AopProxy > at > org.springframework.transaction.interceptor.TransactionProxyFactoryBean.a= fte rPropertiesSet(TransactionProxyFactoryBean.java:167) > at > org.springframework.beans.factory.support.AbstractBeanFactory.callLifecyc= leM ethodsIfNecessary(AbstractBeanFactory.java:1011) > at > org.springframework.beans.factory.support.AbstractBeanFactory.createBean(= Abs tractBeanFactory.java:539) > at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Abs= tra ctBeanFactory.java:186) > at > org.springframework.beans.factory.support.DefaultListableBeanFactory.preI= nst antiateSingletons(DefaultListableBeanFactory.java:184) > at > org.springframework.context.support.AbstractApplicationContext.refresh(Ab= str actApplicationContext.java:284) > at > org.springframework.web.context.support.XmlWebApplicationContext.refresh(= Xml WebApplicationContext.java:107) > > The offending line is: > > ProxyFactory proxyFactory =3D new ProxyFactory(); > > Of course, ProxyFactory extends AdvisedSupport, which directly > references OptimizedCglib1AopProxy. > > > > > ------------------------------------------------------- > This SF.net email is sponsored by: IBM Linux Tutorials. > Become an expert in LINUX or just sharpen your skills. Sign up for = IBM's > Free Linux Tutorials. Learn everything from the bash shell to sys = admin. > Click now! = http://ads.osdn.com/?ad_id=3D1278&alloc_id=3D3371&op=3Dclick > _______________________________________________ > Springframework-developer mailing list > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for = IBM's Free Linux Tutorials. Learn everything from the bash shell to sys = admin. Click now! http://ads.osdn.com/?ad_id=1278&alloc_id371&op=3Dick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for = IBM's Free Linux Tutorials. Learn everything from the bash shell to sys = admin. Click now! http://ads.osdn.com/?ad_id=1278&alloc_id371&op=3Dick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for = IBM's Free Linux Tutorials. Learn everything from the bash shell to sys = admin. Click now! http://ads.osdn.com/?ad_id=1278&alloc_id371&op=3Dick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: <jue...@we...> - 2003-12-12 09:02:26
|
I'd like to keep sticking to the inner-class strategy for = AdvisedSupport: It removes a CGLIB dependency for people that just want = to proxy interfaces anyway. For that use case, no version of CGLIB = should have to be in the class path - spring, commons-logging, and = aop-alliance should be enough. The actual AopProxy implementations for = CGLIB can still use any CGLIB feature that they want. Juergen -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of Colin Sampaleanu Sent: Thursday, December 11, 2003 7:42 PM To: spr...@li... Subject: Re: [Springframework-developer] RE: About CGLIB2 This works fine now without the cglib1 jar. I agree with using the inner-class strategy for a while. We should=20 probably limit the period of time we do this though; there are a lot of=20 useful features in cglib2, and it doesn't make sense to ignore them or=20 have to jump through hoops to use them, for too long a period of time,=20 considering the only real beneficiaries will be Hibernate 2.0 users, who = are going to be a rapidly dying breed. Regards, j=FCrgen h=F6ller [werk3AT] wrote: >I've just fixed it by re-introducing an inner class CglibProxyFactory: = Grab the current AdvisedSupport from CVS, and a JDK proxy will work with = Hibernate 2.1 - without the need for cglib1.jar in the class path. I've = tested it with Petclinic, and it works nicely. > >We should stick to that inner-class strategy when migrating to CGLIB2, = to let people use Hibernate 2.0.x or iBATIS Database Layer (with CGLIB1 = underneath). > >Juergen > > >-----Original Message----- >From: spr...@li... >[mailto:spr...@li...]On Behalf >Of Rod Johnson >Sent: Thursday, December 11, 2003 6:42 PM >To: spr...@li... >Subject: Re: [Springframework-developer] RE: About CGLIB2 > > >I guess in my refactoring I lost the indirection by which a CGLIB proxy = was >created only by an inner class, to prevent dependence on CGLIB at = runtime. >I'll try to sort that out tomorrow or Monday. > >Btw, the TransactionProxyFactoryBean now extends the new ProxyConfig, = which >has a proxyTargetClass property that defaults to false. Set it to true = to >force CGLIB. Otherwise it won't use CGLIB by default. > >Regards, >Rod > >----- Original Message -----=20 >From: "Colin Sampaleanu" <col...@ex...> >To: <spr...@li...> >Sent: Thursday, December 11, 2003 5:29 PM >Subject: Re: [Springframework-developer] RE: About CGLIB2 > > > =20 > >>j=FCrgen h=F6ller [werk3AT] wrote: >> >> =20 >> >>>Everybody, >>> >>>Hibernate 2.1 final with CGLIB2 underneath has just been released. = This >>> =20 >>> >poses the question whether we should still release our 1.0 M4 with = CGLIB1 >support. Of course, our current codebase works nicely with Hibernate = 2.1 as >long as you don't use CGLIB-based AOP proxies (i.e. proxy full target >objects instead of just interfaces), so we don't *have* to update >immediately. > =20 > >>> >>> =20 >>> >>Hmm, maybe this was once the case, but I am not sure it is so easy any >>longer. I tried dropping in Hibernate 2.1 final (with cglib2). = However, >>when using TransactionProxyFactoryBean, which no longer has the old >>ProxyInterfacesOnly boolean option (which used to default to true, and >>used a JDK proxy in the true case instead of cglib proxy), I now get = an >>exception >> >>java.lang.NoClassDefFoundError: >>org/springframework/aop/framework/OptimizedCglib1AopProxy >> at >> >> =20 >> >org.springframework.transaction.interceptor.TransactionProxyFactoryBean.= afte >rPropertiesSet(TransactionProxyFactoryBean.java:167) > =20 > >> at >> >> =20 >> >org.springframework.beans.factory.support.AbstractBeanFactory.callLifecy= cleM >ethodsIfNecessary(AbstractBeanFactory.java:1011) > =20 > >> at >> >> =20 >> >org.springframework.beans.factory.support.AbstractBeanFactory.createBean= (Abs >tractBeanFactory.java:539) > =20 > >> at >> >> =20 >> >org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Ab= stra >ctBeanFactory.java:186) > =20 > >> at >> >> =20 >> >org.springframework.beans.factory.support.DefaultListableBeanFactory.pre= Inst >antiateSingletons(DefaultListableBeanFactory.java:184) > =20 > >> at >> >> =20 >> >org.springframework.context.support.AbstractApplicationContext.refresh(A= bstr >actApplicationContext.java:284) > =20 > >> at >> >> =20 >> >org.springframework.web.context.support.XmlWebApplicationContext.refresh= (Xml >WebApplicationContext.java:107) > =20 > >>The offending line is: >> >> ProxyFactory proxyFactory =3D new ProxyFactory(); >> >>Of course, ProxyFactory extends AdvisedSupport, which directly >>references OptimizedCglib1AopProxy. >> =20 >> ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for = IBM's Free Linux Tutorials. Learn everything from the bash shell to sys = admin. Click now! http://ads.osdn.com/?ad_id=3D1278&alloc_id=3D3371&op=3Dclick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: Rod J. <rod...@in...> - 2003-12-12 09:13:19
|
+1. Proxying interfaces only is normally good practice, which means that people should only need to choose to use CGLIB for AOP if they're "power users". Regards, Rod ----- Original Message -----=20 From: "j=FCrgen h=F6ller [werk3AT]" <jue...@we...> To: <spr...@li...> Sent: Friday, December 12, 2003 9:01 AM Subject: RE: [Springframework-developer] RE: About CGLIB2 I'd like to keep sticking to the inner-class strategy for AdvisedSupport:= It removes a CGLIB dependency for people that just want to proxy interfaces anyway. For that use case, no version of CGLIB should have to be in the class path - spring, commons-logging, and aop-alliance should be enough. = The actual AopProxy implementations for CGLIB can still use any CGLIB feature that they want. Juergen -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of Colin Sampaleanu Sent: Thursday, December 11, 2003 7:42 PM To: spr...@li... Subject: Re: [Springframework-developer] RE: About CGLIB2 This works fine now without the cglib1 jar. I agree with using the inner-class strategy for a while. We should probably limit the period of time we do this though; there are a lot of useful features in cglib2, and it doesn't make sense to ignore them or have to jump through hoops to use them, for too long a period of time, considering the only real beneficiaries will be Hibernate 2.0 users, who are going to be a rapidly dying breed. Regards, j=FCrgen h=F6ller [werk3AT] wrote: >I've just fixed it by re-introducing an inner class CglibProxyFactory: G= rab the current AdvisedSupport from CVS, and a JDK proxy will work with Hibernate 2.1 - without the need for cglib1.jar in the class path. I've tested it with Petclinic, and it works nicely. > >We should stick to that inner-class strategy when migrating to CGLIB2, t= o let people use Hibernate 2.0.x or iBATIS Database Layer (with CGLIB1 underneath). > >Juergen > > >-----Original Message----- >From: spr...@li... >[mailto:spr...@li...]On Behalf >Of Rod Johnson >Sent: Thursday, December 11, 2003 6:42 PM >To: spr...@li... >Subject: Re: [Springframework-developer] RE: About CGLIB2 > > >I guess in my refactoring I lost the indirection by which a CGLIB proxy = was >created only by an inner class, to prevent dependence on CGLIB at runtim= e. >I'll try to sort that out tomorrow or Monday. > >Btw, the TransactionProxyFactoryBean now extends the new ProxyConfig, wh= ich >has a proxyTargetClass property that defaults to false. Set it to true t= o >force CGLIB. Otherwise it won't use CGLIB by default. > >Regards, >Rod > >----- Original Message -----=20 >From: "Colin Sampaleanu" <col...@ex...> >To: <spr...@li...> >Sent: Thursday, December 11, 2003 5:29 PM >Subject: Re: [Springframework-developer] RE: About CGLIB2 > > > > >>j=FCrgen h=F6ller [werk3AT] wrote: >> >> >> >>>Everybody, >>> >>>Hibernate 2.1 final with CGLIB2 underneath has just been released. Thi= s >>> >>> >poses the question whether we should still release our 1.0 M4 with CGLIB= 1 >support. Of course, our current codebase works nicely with Hibernate 2.1= as >long as you don't use CGLIB-based AOP proxies (i.e. proxy full target >objects instead of just interfaces), so we don't *have* to update >immediately. > > >>> >>> >>> >>Hmm, maybe this was once the case, but I am not sure it is so easy any >>longer. I tried dropping in Hibernate 2.1 final (with cglib2). However, >>when using TransactionProxyFactoryBean, which no longer has the old >>ProxyInterfacesOnly boolean option (which used to default to true, and >>used a JDK proxy in the true case instead of cglib proxy), I now get an >>exception >> >>java.lang.NoClassDefFoundError: >>org/springframework/aop/framework/OptimizedCglib1AopProxy >> at >> >> >> >org.springframework.transaction.interceptor.TransactionProxyFactoryBean.= aft e >rPropertiesSet(TransactionProxyFactoryBean.java:167) > > >> at >> >> >> >org.springframework.beans.factory.support.AbstractBeanFactory.callLifecy= cle M >ethodsIfNecessary(AbstractBeanFactory.java:1011) > > >> at >> >> >> >org.springframework.beans.factory.support.AbstractBeanFactory.createBean= (Ab s >tractBeanFactory.java:539) > > >> at >> >> >> >org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Ab= str a >ctBeanFactory.java:186) > > >> at >> >> >> >org.springframework.beans.factory.support.DefaultListableBeanFactory.pre= Ins t >antiateSingletons(DefaultListableBeanFactory.java:184) > > >> at >> >> >> >org.springframework.context.support.AbstractApplicationContext.refresh(A= bst r >actApplicationContext.java:284) > > >> at >> >> >> >org.springframework.web.context.support.XmlWebApplicationContext.refresh= (Xm l >WebApplicationContext.java:107) > > >>The offending line is: >> >> ProxyFactory proxyFactory =3D new ProxyFactory(); >> >>Of course, ProxyFactory extends AdvisedSupport, which directly >>references OptimizedCglib1AopProxy. >> >> ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id=3D1278&alloc_id=3D3371&op=3Dclick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id=1278&alloc_id371&op=3Dick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: Chris N. <ch...@si...> - 2003-12-12 09:35:08
|
Rod Johnson wrote: > +1. Proxying interfaces only is normally good practice, which means that > people should only need to choose to use CGLIB for AOP if they're "power > users". Or, on the other end of spectrum, JDK 1.2 users :-) Chris |
|
From: Colin S. <col...@ex...> - 2003-12-12 12:11:23
|
Sure. I think I wasn't that clear maybe, but I meant that in the future we shouldn't try to use this strategy to handle cglib1 vs. cglib2 implementations of stuff. However, with Chris releasing the new cglib 1.1, it looks like we can move to cglib2 everywhere we need it anyways, and people who need 1.1 for Hibernate 2.0 can still use that, so it's moot. jürgen höller [werk3AT] wrote: >I'd like to keep sticking to the inner-class strategy for AdvisedSupport: It removes a CGLIB dependency for people that just want to proxy interfaces anyway. For that use case, no version of CGLIB should have to be in the class path - spring, commons-logging, and aop-alliance should be enough. The actual AopProxy implementations for CGLIB can still use any CGLIB feature that they want. > >Juergen > > >-----Original Message----- >From: spr...@li... >[mailto:spr...@li...]On Behalf >Of Colin Sampaleanu >Sent: Thursday, December 11, 2003 7:42 PM >To: spr...@li... >Subject: Re: [Springframework-developer] RE: About CGLIB2 > > >This works fine now without the cglib1 jar. > >I agree with using the inner-class strategy for a while. We should >probably limit the period of time we do this though; there are a lot of >useful features in cglib2, and it doesn't make sense to ignore them or >have to jump through hoops to use them, for too long a period of time, >considering the only real beneficiaries will be Hibernate 2.0 users, who >are going to be a rapidly dying breed. > >Regards, > > >jürgen höller [werk3AT] wrote: > > > >>I've just fixed it by re-introducing an inner class CglibProxyFactory: Grab the current AdvisedSupport from CVS, and a JDK proxy will work with Hibernate 2.1 - without the need for cglib1.jar in the class path. I've tested it with Petclinic, and it works nicely. >> >>We should stick to that inner-class strategy when migrating to CGLIB2, to let people use Hibernate 2.0.x or iBATIS Database Layer (with CGLIB1 underneath). >> >>Juergen >> >> >>-----Original Message----- >>From: spr...@li... >>[mailto:spr...@li...]On Behalf >>Of Rod Johnson >>Sent: Thursday, December 11, 2003 6:42 PM >>To: spr...@li... >>Subject: Re: [Springframework-developer] RE: About CGLIB2 >> >> >>I guess in my refactoring I lost the indirection by which a CGLIB proxy was >>created only by an inner class, to prevent dependence on CGLIB at runtime. >>I'll try to sort that out tomorrow or Monday. >> >>Btw, the TransactionProxyFactoryBean now extends the new ProxyConfig, which >>has a proxyTargetClass property that defaults to false. Set it to true to >>force CGLIB. Otherwise it won't use CGLIB by default. >> >>Regards, >>Rod >> >>----- Original Message ----- >>From: "Colin Sampaleanu" <col...@ex...> >>To: <spr...@li...> >>Sent: Thursday, December 11, 2003 5:29 PM >>Subject: Re: [Springframework-developer] RE: About CGLIB2 >> >> >> >> >> >> >>>jürgen höller [werk3AT] wrote: >>> >>> >>> >>> >>> >>>>Everybody, >>>> >>>>Hibernate 2.1 final with CGLIB2 underneath has just been released. This >>>> >>>> >>>> >>>> >>poses the question whether we should still release our 1.0 M4 with CGLIB1 >>support. Of course, our current codebase works nicely with Hibernate 2.1 as >>long as you don't use CGLIB-based AOP proxies (i.e. proxy full target >>objects instead of just interfaces), so we don't *have* to update >>immediately. >> >> >> >> >>>> >>>> >>>> >>>> >>>Hmm, maybe this was once the case, but I am not sure it is so easy any >>>longer. I tried dropping in Hibernate 2.1 final (with cglib2). However, >>>when using TransactionProxyFactoryBean, which no longer has the old >>>ProxyInterfacesOnly boolean option (which used to default to true, and >>>used a JDK proxy in the true case instead of cglib proxy), I now get an >>>exception >>> >>>java.lang.NoClassDefFoundError: >>>org/springframework/aop/framework/OptimizedCglib1AopProxy >>> at >>> >>> >>> >>> >>> >>org.springframework.transaction.interceptor.TransactionProxyFactoryBean.afte >>rPropertiesSet(TransactionProxyFactoryBean.java:167) >> >> >> >> >>> at >>> >>> >>> >>> >>> >>org.springframework.beans.factory.support.AbstractBeanFactory.callLifecycleM >>ethodsIfNecessary(AbstractBeanFactory.java:1011) >> >> >> >> >>> at >>> >>> >>> >>> >>> >>org.springframework.beans.factory.support.AbstractBeanFactory.createBean(Abs >>tractBeanFactory.java:539) >> >> >> >> >>> at >>> >>> >>> >>> >>> >>org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Abstra >>ctBeanFactory.java:186) >> >> >> >> >>> at >>> >>> >>> >>> >>> >>org.springframework.beans.factory.support.DefaultListableBeanFactory.preInst >>antiateSingletons(DefaultListableBeanFactory.java:184) >> >> >> >> >>> at >>> >>> >>> >>> >>> >>org.springframework.context.support.AbstractApplicationContext.refresh(Abstr >>actApplicationContext.java:284) >> >> >> >> >>> at >>> >>> >>> >>> >>> >>org.springframework.web.context.support.XmlWebApplicationContext.refresh(Xml >>WebApplicationContext.java:107) >> >> >> >> >>>The offending line is: >>> >>> ProxyFactory proxyFactory = new ProxyFactory(); >>> >>>Of course, ProxyFactory extends AdvisedSupport, which directly >>>references OptimizedCglib1AopProxy. >>> >>> >>> >>> > > > > >------------------------------------------------------- >This SF.net email is sponsored by: IBM Linux Tutorials. >Become an expert in LINUX or just sharpen your skills. Sign up for IBM's >Free Linux Tutorials. Learn everything from the bash shell to sys admin. >Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click >_______________________________________________ >Springframework-developer mailing list >Spr...@li... >https://lists.sourceforge.net/lists/listinfo/springframework-developer > > >------------------------------------------------------- >This SF.net email is sponsored by: IBM Linux Tutorials. >Become an expert in LINUX or just sharpen your skills. Sign up for IBM's >Free Linux Tutorials. Learn everything from the bash shell to sys admin. >Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click >_______________________________________________ >Springframework-developer mailing list >Spr...@li... >https://lists.sourceforge.net/lists/listinfo/springframework-developer > > |
|
From: <jue...@we...> - 2003-12-12 14:41:49
|
Chris, That's good news! I didn't know that a CGLIB 1.1 release based on ASM = 1.4 was planned: That will indeed resolve the issues. I guess we can = migrate our AOP framework to CGLIB 2.0 now without any hassle! Juergen -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of Chris Nokleberg Sent: Thursday, December 11, 2003 7:28 PM To: spr...@li... Subject: [Springframework-developer] RE: About CGLIB2 j=FCrgen h=F6ller wrote: > Hibernate 2.1 final with CGLIB2 underneath has just been released. = This > poses the question whether we should still release our 1.0 M4 with = CGLIB1 > support. Of course, our current codebase works nicely with Hibernate = 2.1 > as long as you don't use CGLIB-based AOP proxies (i.e. proxy full = target > objects instead of just interfaces), so we don't *have* to update > immediately. [snip] > CGLIB2 is at RC1 in the meantime, so building on it now would be = viable. > In the face of this situation, does everybody still prefer deferred = CGLIB2 > support at the time of our RC1? I vote for migrating already in M4, to > allow for CGLIB-based AOP proxies in combination with Hibernate 2.1 > promptly. After all, typical Spring users will choose to work with the > most current recommended Hibernate version. >=20 > Not that this was a really important criterion, but nevertheless: = Chris, > when do you expect CGLIB2 final? Wow, that's a big thread! I'll try to answer everything in this mail. Here's the current status: Hibernate 2.1 Final ships with CGLIB 2.0 RC1. CGLIB 2.0 Final will probably be released within a week. At the same time, CGLIB *1.1* will also be released. This will be exactly the same as CGLIB 1.0 except it will use ASM 1.4 instead of 1.3, which will allow it to be used simutaneously with CGLIB 2.0 (no classname are shared between CGLIB 1.0 and 2.0 for this reason). With CGLIB 1.1 available, your decision to use CGLIB 2.0 for AOP can be independant of whether you want to support Hibernate 2.1, I think. Rod Johnson wrote: > Chris, I guess I'd better take another look at your examples of how we > could do away with CGLIB "optimization" in favour of CGLIB2 lazy > interceptors or whatever they're called. Is there any documentation on > the changes in CGLIB and how to take best advantage of them, besides > your excellent emails here :-) No "article"-type documentation yet. I'll try to answer whatever questions you have in the meantime. Colin Sampaleanu wrote: > Yes, getting rid of that bloated beast will clear up 500k! > BCELAttributes and BCELAttributeWriter from the Sandbox can still be > accessed from CVS history when we want to do the new versions... It should be pretty easy to port these things over to CGLIB/ASM. ASM 1.4 also has some support for the JSR 175 classfile attributes, in case you want to be future-compatible. j=FCrgen h=F6ller wrote: > On a related note, the iBATIS Database Layer 1.2.8 (as used by our > JPetStore version) requires CGLIB 1.0. But as I said, this doesn't > matter as long as you don't use CGLIB-based AOP proxies (which we > don't in our JPetStore version). It's worth mentioning in the release > notes, though. I think the release of CGLIB 1.1 will make this moot.=20 Rod Johnson wrote: > Anyone know if Clinton has plans to upgrade to CGLIB 2? Yes, I've been in contact with Clinton and version 2 of iBATIS should be using CGLIB 2. Let me know if you have any more questions. Chris ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for = IBM's Free Linux Tutorials. Learn everything from the bash shell to sys = admin. Click now! http://ads.osdn.com/?ad_id=3D1278&alloc_id=3D3371&op=3Dclick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: Chris N. <ch...@si...> - 2003-12-16 06:18:37
|
jürgen höller [werk3AT] wrote: > That's good news! I didn't know that a CGLIB 1.1 release based on ASM 1.4 > was planned: That will indeed resolve the issues. I guess we can migrate > our AOP framework to CGLIB 2.0 now without any hassle! FYI CGLIB 1.1-RC1 and 2.0-RC2 are both available for download now. The new 2.0 release fixes some important bugs that exist in the jar currently shipping with Hibernate 2.1-Final, so I would not hesitate to update. Since you will for the time being be using CGLIB 1.1 and 2.0 together, I would also recommend that you include asm.jar separately. Here are download links for the three jars: http://prdownloads.sourceforge.net/cglib/cglib-2.0-RC2.jar?download http://prdownloads.sourceforge.net/cglib/cglib-1.1-RC1.jar?download http://forge.objectweb.org/project/download.php?group_id=23&file_id=1349 Even if you do not upgrade to Hibernate 2.1 I would still recommend using CGLIB 1.1 instead of 1.0, since it will allow your users to use CGLIB 2.0 for their own code. Chris |
|
From: Rod J. <rod...@in...> - 2003-12-11 15:59:49
|
Anyone know if Clinton has plans to upgrade to CGLIB 2? ----- Original Message -----=20 From: "j=FCrgen h=F6ller [werk3AT]" <jue...@we...> To: <spr...@li...> Sent: Thursday, December 11, 2003 3:52 PM Subject: RE: [Springframework-developer] RE: About CGLIB2 On a related note, the iBATIS Database Layer 1.2.8 (as used by our JPetSt= ore version) requires CGLIB 1.0. But as I said, this doesn't matter as long a= s you don't use CGLIB-based AOP proxies (which we don't in our JPetStore version). It's worth mentioning in the release notes, though. Juergen -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of j=FCrgen h=F6ller [werk3AT] Sent: Thursday, December 11, 2003 4:14 PM To: spr...@li... Subject: [Springframework-developer] RE: About CGLIB2 Everybody, Hibernate 2.1 final with CGLIB2 underneath has just been released. This poses the question whether we should still release our 1.0 M4 with CGLIB1 support. Of course, our current codebase works nicely with Hibernate 2.1 = as long as you don't use CGLIB-based AOP proxies (i.e. proxy full target objects instead of just interfaces), so we don't *have* to update immediately. Migrating our AOP proxy generation to CGLIB2 should be straightforward. Afterwards, it will be the other way round in terms of compatibility: Hibernate 2.0 will still work with a current Spring release as long as yo= u don't use CGLIB-based AOP proxies. In any case, the most important rule i= s to just have the CGLIB version needed by your Hibernate version in the cl= ass path. CGLIB2 is at RC1 in the meantime, so building on it now would be viable. = In the face of this situation, does everybody still prefer deferred CGLIB2 support at the time of our RC1? I vote for migrating already in M4, to al= low for CGLIB-based AOP proxies in combination with Hibernate 2.1 promptly. After all, typical Spring users will choose to work with the most current recommended Hibernate version. Not that this was a really important criterion, but nevertheless: Chris, when do you expect CGLIB2 final? Juergen -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of Alef Arendsen (JTeam) Sent: Wednesday, December 03, 2003 11:20 PM To: spr...@li... Subject: About CGLIB2 (was: RE: [Springframework-developer] Release plan) Juergen (et al), So the current plan is: - M4 (CGLIB1): just before X-mas - RC1 (CGLIB2): 2nd week of January or something. Is there any idea on when CGLIB2 support is to be introduced (I heard supporting both of them at a time is a hassle or at least too much work). We've currently got a project (Spring + Hibernate 2.1) underway of which a initial release is targetted for the 12th of January. Are there going to be significant changes when moving from CGLIB1 to 2 (which will force me to stick with M4 for that particular project) or is it going to be a smooth transition without much impact? Thanks! Alef > -----Oorspronkelijk bericht----- > Van: spr...@li... > [mailto:spr...@li...] > Namens j=FCrgen h=F6ller [werk3AT] > Verzonden: Tuesday, December 02, 2003 3:27 PM > Aan: spr...@li... > Onderwerp: [Springframework-developer] Release plan > > > Guys, > > We need to settle on a concrete roadmap. > > Despite our initial plans to go straight to RC1, I'm inclined > to vote for an M4 in two weeks' time, with the significant > reworkings that have been introduced in the meantime (in the > bean factory and AOP area), with the current state of the > docs, and still with CGLIB1. We can also introduce our > JPetStore version with that release. > > I suggest to target RC1 for early January then, with CGLIB2 > and - most importantly - a proper reference manual. In the > ideal case, 1.0 final could be ready at the end of January. > M4 would correspond to a feature freeze, with full > concentration on bugfixes and docs afterwards. RC1 should > already be as good as it gets, a true "release candidate". > > Juergen > > > -----Original Message----- > From: spr...@li... > [mailto:spr...@li...] > On Behalf Of Matthew E. Porter > Sent: Monday, December 01, 2003 6:37 PM > To: spr...@li... > Subject: Re: [Springframework-developer] Hibernate 2.1 and CGLIB > > > This was a good answer since it provides a roadmap. Can someone post > this on the wiki or the website for others who may have the same > question? > > > Cheers, > matthew > > On Dec 1, 2003, at 11:04 AM, j=FCrgen h=F6ller [werk3AT] wrote: > > > Hi Matthew, > > > > We've been discussing that for a while. If Hibernate 2.1 gets final > > early enough (and it seems to, being already in RC1 stage), we will > > switch to it for our 1.0 RCs. If 2.1 would still be far > from final, we > > would probably have to support both CGLIB1 and CGLIB2 somehow. > > Fortunately, that seems not to be necessary anymore! > > > > For the time being, if you don't proxy full classes (but just > > interfaces) or don't use Spring AOP in the first place, you > should be > > able to work with Hibernate 2.1 and its CGLIB2 without hassle. The > > same will apply to Hibernate 2.0 users after we've moved to CGLIB2: > > You don't need to worry if you don't use Spring AOP will > full proxies. > > > > I think we can live with requiring an update to Hibernate 2.1 if a > > user wants full AOP proxies in combination. Actually, we probably > > *need* to move to CGLIB2 once Hibernate 2.1 final is > released: Power > > users will want to combine full Spring AOP proxying with > the current > > Hibernate version, not with a previous one. > > > > Now it would be really great if CGLIB2 were final too until > Spring 1.0 > > final! :-) It's no problem to ship a CGLIB2 beta with our upcoming > > Spring 1.0 RC1, but it worries me to include a CGLIB2 beta > in Spring > > 1.0 final. Haven't the Hibernate guys the same problem? Or are they > > fine with shipping a CGLIB2 beta with Hibernate 2.1 final? > > > > So I suggest to release our 1.0 RC1 shortly after Hibernate > 2.1 final, > > already with CGLIB2 support. As I said, we will just force > users with > > full AOP proxies to upgrade to Hibernate 2.1 if using the two in > > combination. We could release a 1.0 M4 shortly before that though, > > still with CGLIB1 - to ease migration paths for Hibernate 2.0 users. > > > > Juergen > > > > > > -----Original Message----- > > From: spr...@li... > > [mailto:spr...@li...]On > > Behalf Of Matthew E. Porter > > Sent: Monday, December 01, 2003 5:06 PM > > To: spr...@li... > > Subject: [Springframework-developer] Hibernate 2.1 and CGLIB > > > > > > I have looked through the mailing list archives but was > unable to find > > the answer to my question. Will Spring move to support > Hibernate 2.1 > > (as it is the new *recommended* version) and, if so, when? > > > > Also, does anyone know if I can use it now with the cglib version > > change? > > > > > > > > Cheers, > > matthew > > > > > > > > ------------------------------------------------------- > > This SF.net email is sponsored by: SF.net Giveback Program. Does > > SourceForge.net help you be more productive? Does it help > you create > > better code? SHARE THE LOVE, and help us help YOU! Click Here: > > http://sourceforge.net/donate/ > > _______________________________________________ > > Springframework-developer mailing list > > Spr...@li... > > > https://lists.sourceforge.net/lists/listinfo/s> pringframework-developer > > > > > > ------------------------------------------------------- > > This SF.net email is sponsored by: SF.net Giveback Program. Does > > SourceForge.net help you be more productive? Does it help > you create > > better code? SHARE THE LOVE, and help us help YOU! Click Here: > > http://sourceforge.net/donate/ > > _______________________________________________ > > Springframework-developer mailing list > > Spr...@li... > > > https://lists.sourceforge.net/lists/listinfo/s> pringframework-developer > > > > ------------------------------------------------------- > This SF.net email is sponsored by: SF.net Giveback Program. > Does SourceForge.net help you be more productive? Does it > help you create better code? SHARE THE LOVE, and help us > help YOU! Click Here: http://sourceforge.net/donate/ > _______________________________________________ > Springframework-developer mailing list > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer > > > ------------------------------------------------------- > This SF.net email is sponsored by: SF.net Giveback Program. > Does SourceForge.net help you be more productive? Does it > help you create better code? SHARE THE LOVE, and help us > help YOU! Click Here: http://sourceforge.net/donate/ > _______________________________________________ > Springframework-developer mailing list > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer > ------------------------------------------------------- This SF.net email is sponsored by OSDN's Audience Survey. Help shape OSDN's sites and tell us what you think. Take this five minute survey and you could win a $250 Gift Certificate. http://www.wrgsurveys.com/2003/osdntech03.php?site=3D _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id=1278&alloc_id371&op=3Dick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id=1278&alloc_id371&op=3Dick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |