dev@glassfish.java.net

Re: broken Felix classloader?

From: Lloyd Chambers <Lloyd.Chambers_at_Sun.COM>
Date: Tue, 21 Apr 2009 07:15:57 -0700

Richard,

javax.management.ObjectName is part of the JDK. I've never had to
import the JDK. Could I be misinterpreting the error?

The class javax.management.ObjectName has been used extensively prior
to that error, of course immediately prior since I just made the list.

Lloyd

On Apr 21, 2009, at 12:52 AM, Richard S. Hall wrote:

> And you are sure your bundle has imported that package?
>
> -> richard
>
> On 4/20/09 9:15 PM, Lloyd Chambers wrote:
>> There seems to be something very broken about the Felix classloader.
>>
>> I have a java.lang.reflect.Proxy implementing method:
>>
>> public ObjectName[] getChildren();
>>
>> My handler returns a non-null ObjectName[] as it should. After
>> that, it goes haywire:
>>
>> ===> the Felix classloader says it cannot find a standard JDK
>> class: javax.management.ObjectName! See the
>> ClassNotFoundException below.
>>
>>
>> Lloyd
>>
>> INFO: invoke: getChildren, result =
>> [Ljavax.management.ObjectName;@64015331
>> Apr 20, 2009 6:11:21 PM
>> INFO: invoke: getChildren, return result =
>> [Ljavax.management.ObjectName;@64015331
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: java.lang.reflect.InvocationTargetException
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
>> Method)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> sun
>> .reflect
>> .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> sun
>> .reflect
>> .DelegatingMethodAccessorImpl
>> .invoke(DelegatingMethodAccessorImpl.java:25)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at java.lang.reflect.Method.invoke(Method.java:597)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> org
>> .glassfish
>> .admin
>> .amx.impl.mbean.AMXImplBase.getAttributeByMethod(AMXImplBase.java:
>> 588)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> org
>> .glassfish
>> .admin
>> .amx.impl.mbean.AMXImplBase.getAttributeInternal(AMXImplBase.java:
>> 505)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> org
>> .glassfish
>> .admin.amx.impl.mbean.AMXImplBase.getAttribute(AMXImplBase.java:460)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> org
>> .glassfish
>> .admin.amx.impl.mbean.AMXImplBase.getAttributes(AMXImplBase.java:544)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> com
>> .sun
>> .jmx
>> .interceptor
>> .DefaultMBeanServerInterceptor
>> .getAttributes(DefaultMBeanServerInterceptor.java:726)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> com
>> .sun
>> .jmx.mbeanserver.JmxMBeanServer.getAttributes(JmxMBeanServer.java:
>> 665)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> javax
>> .management
>> .remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:
>> 1407)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at javax.management.remote.rmi.RMIConnectionImpl.access
>> $200(RMIConnectionImpl.java:72)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at javax.management.remote.rmi.RMIConnectionImpl
>> $PrivilegedOperation.run(RMIConnectionImpl.java:1264)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> javax
>> .management
>> .remote
>> .rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:
>> 1359)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> javax
>> .management
>> .remote.rmi.RMIConnectionImpl.getAttributes(RMIConnectionImpl.java:
>> 636)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
>> Method)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> sun
>> .reflect
>> .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> sun
>> .reflect
>> .DelegatingMethodAccessorImpl
>> .invoke(DelegatingMethodAccessorImpl.java:25)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at java.lang.reflect.Method.invoke(Method.java:597)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at sun.rmi.transport.Transport$1.run(Transport.java:159)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at java.security.AccessController.doPrivileged(Native
>> Method)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:
>> 535)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at sun.rmi.transport.tcp.TCPTransport
>> $ConnectionHandler.run0(TCPTransport.java:790)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at sun.rmi.transport.tcp.TCPTransport
>> $ConnectionHandler.run(TCPTransport.java:649)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at java.util.concurrent.ThreadPoolExecutor
>> $Worker.runTask(ThreadPoolExecutor.java:885)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at java.util.concurrent.ThreadPoolExecutor
>> $Worker.run(ThreadPoolExecutor.java:907)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at java.lang.Thread.run(Thread.java:637)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: Caused by: java.lang.NoClassDefFoundError: [Ljavax/
>> management/ObjectName;
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at $Proxy74.getChildren(Unknown Source)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> org
>> .glassfish
>> .admin.amx.impl.ext.RuntimeMgrImpl.getProtocol(RuntimeMgrImpl.java:
>> 123)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> org
>> .glassfish
>> .admin
>> .amx.impl.ext.RuntimeMgrImpl.getRESTBaseURL(RuntimeMgrImpl.java:152)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: ... 29 more
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: Caused by: java.lang.ClassNotFoundException:
>> javax.management.ObjectName
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> org
>> .apache
>> .felix
>> .framework
>> .searchpolicy
>> .ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:565)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> org.apache.felix.framework.searchpolicy.ModuleImpl.access
>> $100(ModuleImpl.java:59)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at org.apache.felix.framework.searchpolicy.ModuleImpl
>> $ModuleClassLoader.loadClass(ModuleImpl.java:1434)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: at
>> java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374)
>> Apr 20, 2009 6:11:21 PM
>> SEVERE: ... 32 more
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>

Lloyd Chambers
lloyd.chambers_at_sun.com
GlassFish Team