Bug 809191

Summary: [jmx plugin] manual add / import of J2SE 5 (i.e. JMX Remoting) JMX Server Resource fails with "ClassCastException: java.lang.String cannot be cast to [Ljava.lang.Object;" error in JMXDiscoveryComponent.getJavaVersion()
Product: [Other] RHQ Project Reporter: Ian Springer <ian.springer>
Component: PluginsAssignee: Charles Crouch <ccrouch>
Status: CLOSED CURRENTRELEASE QA Contact: Mike Foley <mfoley>
Severity: high Docs Contact:
Priority: high    
Version: 4.3CC: ccrouch, hbrock, hrupp
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: 4.4 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-09-04 03:48:32 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:

Description Ian Springer 2012-04-02 13:37:20 EDT
Summarizing my problem again: I'm unable to manually add a JMX Server and got the below stacktrace in the agent side:

2012-03-22 08:32:00,971 INFO  [ResourceDiscoveryComponent.

    invoker.daemon-94] (ems.impl.jmx.connection.DConnection)- Found 154 MBeans - starting load...
    2012-03-22 08:32:00,986 ERROR [WorkerThread#0[10.35.12.74:46690]] (rhq.core.pc.inventory.InventoryManager)- Manual add failed for resource of type [JMX Server] and parent resource id [10001]
    java.lang.reflect.UndeclaredThrowableException
            at $Proxy73.discoverResource(Unknown Source)
            at org.rhq.core.pc.inventory.InventoryManager.discoverResource(InventoryManager.java:357)
            at org.rhq.core.pc.inventory.InventoryManager.manuallyAddResource(InventoryManager.java:687)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:597)
            at org.rhq.enterprise.communications.command.impl.remotepojo.server.RemotePojoInvocationCommandService.execute(RemotePojoInvocationCommandService.java:184)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:597)
            at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:93)
            at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:27)
            at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:208)
            at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:120)
            at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:262)
            at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
            at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
            at javax.management.MBeanServerInvocationHandler.invoke(MBeanServerInvocationHandler.java:288)
            at $Proxy0.execute(Unknown Source)
            at org.rhq.enterprise.communications.command.server.CommandProcessor.handleIncomingInvocationRequest(CommandProcessor.java:290)
            at org.rhq.enterprise.communications.command.server.CommandProcessor.invoke(CommandProcessor.java:184)
            at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:809)
            at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:608)
            at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:406)
            at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:173)
    Caused by: java.lang.Exception: Discovery component invocation failed.
            at org.rhq.core.pc.util.DiscoveryComponentProxyFactory$ComponentInvocationThread.call(DiscoveryComponentProxyFactory.java:296)
            at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
            at java.util.concurrent.FutureTask.run(FutureTask.java:138)
            at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
            at java.lang.Thread.run(Thread.java:619)
    Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to [Ljava.lang.Object;
            at javax.management.openmbean.TabularDataSupport.get(TabularDataSupport.java:260)
            at org.rhq.plugins.jmx.JMXDiscoveryComponent.getJavaVersion(JMXDiscoveryComponent.java:267)
            at org.rhq.plugins.jmx.JMXDiscoveryComponent.discoverResource(JMXDiscoveryComponent.java:247)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:597)
            at org.rhq.core.pc.util.DiscoveryComponentProxyFactory$ComponentInvocationThread.call(DiscoveryComponentProxyFactory.java:292)
            ... 5 more
Comment 1 Ian Springer 2012-04-02 13:41:52 EDT
Fixed in master:

http://git.fedorahosted.org/git/?p=rhq/rhq.git;a=commitdiff;h=34f5b2e
Comment 4 Heiko W. Rupp 2013-09-04 03:48:32 EDT
Bulk closing of some old issues