users@glassfish.java.net

Re: Logback JMX Configuration with Glassfish

From: <forums_at_java.net>
Date: Wed, 27 Apr 2011 11:28:11 -0500 (CDT)

 On debugging the source code (build 43) I found that there are two
WebAppClassLoader instances created for my web application. At first a
'shareableTemp' instance is created (as being named in the
DeploymentContextImpl class) which is then destroyed in the
getClassLoader(boolean shareable) method after a PREPARE phase. A new
instance for the same web application is created (named by the variable
cloader in DeploymentContextImpl class)and thereafter used. While destroying
the shareable classloader instance the 'stared' boolean instance variable of
the WebAppClassLoader class is set to false.

When I start the jmx client i.e. jconsole, a request is made to load the
class "java.lang.Object" with the same classloader instance for which the
destroy method was called (sharableTemp). This leads to the above error. The
request to load the class is made by DefaultMBeanInterceptor class. This
class gets the 'shareable'classloader instance from the mbean. 

Any idea why is the 'shareable' classloader instance is getting used by the
DefaultMBeanInterceptor?

 

 


--
[Message sent by forum member 'table1']
View Post: http://forums.java.net/node/795429