[jboss-dev-forums] [Design of EJB 3.0] - Re: Classloading problem in proxy factories
bstansberry@jboss.com
do-not-reply at jboss.com
Thu Aug 28 11:13:20 EDT 2008
Re: closing EJBTHREE-1471: I think there's still something to be understood here. For sure to get this to work you had to catch LinkageError, and that tells us there's two different classloaders in place. The concern I have is if the TCL is longer-lasting than the EJB CL, the business interface class it loads leaks.
Ah, of course the classloader leak tests pass -- they test for the EJB CL leaking, not the business interface class loaded via a different CL. In this case the classloader associated with the remoting connector.
OK, I think I'm clear on this now. :) EJBTHREE-1471 doesn't leak to EJB CL. It does pollute the proxy cache associated with the remoting connector's CL with a proxy associated with version A of the business interface. If you redeploy the EJB, the remoting CL's proxy cache is now corrupt. Your LinkageError catch makes the proxy creation usable, but you've still got a corrupt proxy cache. Maybe that's acceptable, but if something like the the check I suggested a few posts back can be added, it would be cleaner. May be a bit slower (or a bit faster) before a redeploy, but faster after, since it avoids trying to create a proxy that's just going to fail w/ LinkageError.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4173110#4173110
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4173110
More information about the jboss-dev-forums
mailing list