6 Replies Latest reply on Oct 25, 2002 11:33 AM by zahran

    JMX remoting now in JBoss-MX

      Hello all. This is just to announce that JBoss-MX now has full remoting capabilities. JMBoss-MX now includes dynamic discovery of remote MBeanServer, rollup of remote MBeanServers and MBeans to be managed via local MBeanServer, filtering, connectors, and a lot more.

      If you are familiar with JSR-160, this is a proposed implementation for this spec. However, keep in mind there is no released documentation about the spec, so the implementation may be updated to conform once one is released (but at least it is something that you can use today).

      All the code has been checked in CVS, but is not part of a binary release yet (so you'll have to get the source and compile it). Most of the code is in the remote package. The best starting point is a word doc in the root jmx/doc directory called JMX_Remote.doc (you can just browse it at http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/jboss/jmx/doc/ if you want). This doc will cover some of design concepts and cover how to run some built in samples. This document is a work in progress, so feel free to contribute.

      Thanks.

      -Tom

        • 1. Re: JMX remoting now in JBoss-MX
          zahran

          I have compiled the JMX remoting package and when I tried to start the LocalServerTest example, I got out of memory error. Any idea !!!...

          • 2. Re: JMX remoting now in JBoss-MX

            well first step is to increase the max heap size in your JVM with -mx option

            • 3. Re: JMX remoting now in JBoss-MX

              You calling main directly or running from ant target.

              • 4. Re: JMX remoting now in JBoss-MX

                Can not reproduce your out of memory error, but did find a bug that other may have run into. Looks like in JDK 1.3, it has problem with inner classes that reference methods of parent's super class. The error was happening when Publisher calling getServer(). So just added the getServer() method to the MulticastDetector that explicitly called it's super's getServer() and it works! This fix is now checked in.

                • 5. Re: JMX remoting now in JBoss-MX
                  zahran

                  I am calling main directly.

                  java -classpath %jboss% org.jboss.mx.remote.LocalServerTest
                  0 [main] DEBUG org.jboss.mx.remote.discovery.multicast.MulticastDetector - InstanceID = fa590aa70f7860df-1786e6
                  4-f11b7bb988--8000
                  0 [main] INFO org.jboss.mx.remote.discovery.multicast.MulticastDetector - Starting
                  10 [main] DEBUG org.jboss.mx.remote.discovery.multicast.MulticastDetector - jmx.remoting:transport=multicast,ty
                  pe=Detector serverid = alkiswani_1035548211301
                  40 [main] INFO org.jboss.mx.remote.discovery.multicast.MulticastDetector - Started
                  70 [main] DEBUG org.jboss.mx.remote.server.CascadingAgent - Query [0] = [Ljavax.management.QueryExp;
                  80 [main] INFO org.jboss.mx.remote.server.CascadingAgent - Starting
                  80 [main] DEBUG org.jboss.mx.remote.server.CascadingAgent - registering Detector: jmx.remoting:type=Detector,tr
                  ansport=multicast
                  90 [main] INFO org.jboss.mx.remote.server.CascadingAgent - Started
                  OBJECT NAME = Adaptor:name=html,port=8082
                  110 [main] DEBUG org.jboss.mx.remote.server.CascadingAgent - Notification: javax.management.MBeanServerNotifica
                  tion[source=JMImplementation:type=MBeanServerDelegate], handback: null, type: JMX.mbean.registered
                  110 [main] DEBUG org.jboss.mx.remote.server.CascadingAgent - Notification: javax.management.MBeanServerNotifica
                  tion[source=JMImplementation:type=MBeanServerDelegate], handback: null, type: JMX.mbean.registered
                  120 [main] DEBUG org.jboss.mx.remote.server.CascadingAgent - Notification: javax.management.MBeanServerNotifica
                  tion[source=JMImplementation:type=MBeanServerDelegate], handback: null, type: JMX.mbean.registered
                  120 [main] DEBUG org.jboss.mx.remote.server.CascadingAgent - Notification: javax.management.MBeanServerNotifica
                  tion[source=JMImplementation:type=MBeanServerDelegate], handback: null, type: JMX.mbean.registered
                  140 [main] DEBUG org.jboss.mx.remote.server.CascadingAgent - Notification: javax.management.MBeanServerNotifica
                  tion[source=JMImplementation:type=MBeanServerDelegate], handback: null, type: JMX.mbean.registered
                  140 [main] DEBUG org.jboss.mx.remote.server.CascadingAgent - Notification: javax.management.MBeanServerNotifica
                  tion[source=JMImplementation:type=MBeanServerDelegate], handback: null, type: JMX.mbean.registered
                  140 [main] DEBUG org.jboss.mx.remote.server.CascadingAgent - Notification: javax.management.MBeanServerNotifica
                  tion[source=JMImplementation:type=MBeanServerDelegate], handback: null, type: JMX.mbean.registered
                  140 [main] DEBUG org.jboss.mx.remote.server.CascadingAgent - Notification: javax.management.MBeanServerNotifica
                  tion[source=JMImplementation:type=MBeanServerDelegate], handback: null, type: JMX.mbean.registered
                  140 [main] DEBUG org.jboss.mx.remote.server.CascadingAgent - Notification: javax.management.MBeanServerNotifica
                  tion[source=JMImplementation:type=MBeanServerDelegate], handback: null, type: JMX.mbean.registered
                  140 [main] DEBUG org.jboss.mx.remote.server.CascadingAgent - Notification: javax.management.MBeanServerNotifica
                  tion[source=JMImplementation:type=MBeanServerDelegate], handback: null, type: JMX.mbean.registered
                  140 [main] DEBUG org.jboss.mx.remote.server.CascadingAgent - Notification: javax.management.MBeanServerNotifica
                  tion[source=JMImplementation:type=MBeanServerDelegate], handback: null, type: JMX.mbean.registered
                  150 [main] DEBUG org.jboss.mx.remote.server.CascadingAgent - Notification: javax.management.MBeanServerNotifica
                  tion[source=JMImplementation:type=MBeanServerDelegate], handback: null, type: JMX.mbean.registered .....
                  ...
                  ...

                  • 6. Re: JMX remoting now in JBoss-MX
                    zahran

                    Using Tivoli JMX adaptor fixed the out of memory problem.
                    However, when I ran both LocalServerTest and RemoteServerTest processes, I only see the Agent view of the local MBeanServer and its (MBeansObjectNamejmx.remoting:type=CascadingAgent and /ObjectNamejmx.remoting:type=Detector,transport=multicast) only.
                    So it looks like JMX remoting is not working correctly !!!.
                    BTW, I have checked out the latest fix.