remote call mxbean,but ClassNotFoundException
mirrorman Sep 18, 2007 12:59 AMHi~
I test remote call JMX through RMIAdaptor.
i wrote definition to jboss-service.xml about new jmx information and deploy.
it is good working for test in the JMX-console. but, if client program call the operation of jmx, it happen to ClassNotFoundException.
Am i wrong something, would you check my jmx script?
// jmx script
<mbean code="mbean.system.SystemInfo" name="jboss.jmx:service=SystemInfo"
xmbean-dd="">
SystemInfo
mbean.system.SystemInfo
mbean.system.MemoryInfoObject
mbean.system.RuntimeInfoObject
mbean.system.SystemInfoObject
SystemInfoMBean
java.lang.String
MBean Status
getMemoryMXBean
<return-type>java.lang.Object</return-type>
getOperationMXBean
<return-type>java.lang.Object</return-type>
getRuntimeMXBean
<return-type>java.lang.Object</return-type>
// call part of client side
Object result = server.invoke(name, "getMemoryMXBean", new Object[0], new String[0]);
// exception log
Caused by: java.lang.ClassNotFoundException: mbean.system.MemoryInfoObject (no security manager: RMI class loader disabled)
at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:371)
at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:165)
at java.rmi.server.RMIClassLoader$2.loadClass(RMIClassLoader.java:620)
at java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java:247)
at sun.rmi.server.MarshalInputStream.resolveClass(MarshalInputStream.java:197)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1538)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1460)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1693)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:339)
at java.rmi.MarshalledObject.get(MarshalledObject.java:135)
at org.jboss.invocation.jrmp.interfaces.JRMPInvokerProxy.invoke(JRMPInvokerProxy.java:134)
at org.jboss.invocation.InvokerInterceptor.invokeInvoker(InvokerInterceptor.java:365)
at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:197)
at org.jboss.jmx.connector.invoker.client.InvokerAdaptorClientInterceptor.invoke(InvokerAdaptorClientInterceptor.java:66)
at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:70)
at org.jboss.proxy.ClientMethodInterceptor.invoke(ClientMethodInterceptor.java:74)
at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:100)
... 2 more