Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-6714318

Add JMX Connection fails if the target MBeanServer is not the platform MBeanServer

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P3 P3
    • 6u18
    • 6u7
    • tools
    • None
    • b06
    • generic
    • generic

      I have a JMX application which creates a private MBeanServer and export it
      using an RMI Connector Server.

      If I try to connect jvisualvm to that application using
      "Add JMX Connection", the little red icon in the bottom right corner starts blinking
      and the exception below appears in the log. The connection fails to open and
      there's no way I can see my MBeans.

      javax.management.InstanceNotFoundException: java.lang:type=Runtime
      at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean(DefaultMBeanServerInterceptor.java:1130)
      at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.isInstanceOf(DefaultMBeanServerInterceptor.java:1438)
      at com.sun.jmx.interceptor.MBeanServerDispatcher.isInstanceOf(MBeanServerDispatcher.java:373)
      at com.sun.jmx.interceptor.MBeanServerDispatcher.isInstanceOf(MBeanServerDispatcher.java:373)
      at com.sun.jmx.mbeanserver.JmxMBeanServer.isInstanceOf(JmxMBeanServer.java:1087)
      at javax.management.remote.IdentityMBeanServerForwarder.isInstanceOf(IdentityMBeanServerForwarder.java:154)
      at com.sun.jmx.interceptor.SingleMBeanForwarder.isInstanceOf(SingleMBeanForwarder.java:268)
      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 javax.management.ClientContext$ContextInvocationHandler.invoke(ClientContext.java:635)
      at javax.management.ClientContext$ContextInvocationHandler.invoke(ClientContext.java:581)
      at $Proxy1.isInstanceOf(Unknown Source)
      at javax.management.remote.IdentityMBeanServerForwarder.isInstanceOf(IdentityMBeanServerForwarder.java:154)
      at com.sun.jmx.interceptor.SingleMBeanForwarder.isInstanceOf(SingleMBeanForwarder.java:268)
      at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1751)
      at javax.management.remote.rmi.RMIConnectionImpl.access$1000(RMIConnectionImpl.java:99)
      at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1590)
      at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1678)
      at javax.management.remote.rmi.RMIConnectionImpl.isInstanceOf(RMIConnectionImpl.java:916)
      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 sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
      at sun.rmi.transport.Transport$1.run(Transport.java:159)
      at java.security.AccessController.doPrivileged(Native Method)
      at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
      at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
      at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
      at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
      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)
      at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
      at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
      at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:142)
      at com.sun.jmx.remote.internal.PRef.invoke(Unknown Source)
      at javax.management.remote.rmi.RMIConnectionImpl_Stub.isInstanceOf(Unknown Source)
      at javax.management.remote.rmi.RMIConnector$RemoteMBeanServerConnection.isInstanceOf(RMIConnector.java:1058)
      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.tools.visualvm.jmx.JmxModelImpl$CheckerInvocationHandler.invoke(JmxModelImpl.java:801)
      at $Proxy9.isInstanceOf(Unknown Source)
      at java.lang.management.ManagementFactory.newPlatformMXBeanProxy(ManagementFactory.java:616)
      Caused: java.lang.IllegalArgumentException: java.lang:type=Runtime not found in the connection.
      at java.lang.management.ManagementFactory.newPlatformMXBeanProxy(ManagementFactory.java:629)
      at com.sun.tools.visualvm.tools.jmx.JvmMXBeansFactory$JvmMXBeansImpl.getMXBean(JvmMXBeansFactory.java:382)
      at com.sun.tools.visualvm.tools.jmx.JvmMXBeansFactory$JvmMXBeansImpl.getRuntimeMXBean(JvmMXBeansFactory.java:355)
      at com.sun.tools.visualvm.jmx.application.JmxApplication.getPid(JmxApplication.java:103)
      at com.sun.tools.visualvm.jvmstat.JvmstatModelProvider.getMonitoredVm(JvmstatModelProvider.java:48)
      at com.sun.tools.visualvm.jvmstat.JvmstatModelProvider.createModelFor(JvmstatModelProvider.java:69)
      at com.sun.tools.visualvm.jvmstat.JvmstatModelProvider.createModelFor(JvmstatModelProvider.java:44)
      at com.sun.tools.visualvm.core.model.ModelFactory.getModel(ModelFactory.java:96)
      at com.sun.tools.visualvm.tools.jvmstat.JvmstatModelFactory.getJvmstatFor(JvmstatModelFactory.java:50)
      at com.sun.tools.visualvm.jvm.JRockitJvmProvider.createModelFor(JRockitJvmProvider.java:46)
      at com.sun.tools.visualvm.jvm.JRockitJvmProvider.createModelFor(JRockitJvmProvider.java:42)
      at com.sun.tools.visualvm.core.model.ModelFactory.getModel(ModelFactory.java:96)
      at com.sun.tools.visualvm.application.jvm.JvmFactory.getJVMFor(JvmFactory.java:65)
      at com.sun.tools.visualvm.jmx.application.JmxApplicationProvider.addJmxApplication(JmxApplicationProvider.java:305)
      at com.sun.tools.visualvm.jmx.application.JmxApplicationProvider.createJmxApplication(JmxApplicationProvider.java:205)
      at com.sun.tools.visualvm.jmx.application.AddJMXConnectionAction$1.run(AddJMXConnectionAction.java:78)
      at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:561)
      [catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:986)

            thurka Tomáš Hůrka
            dfuchs Daniel Fuchs
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: