[jboss-jira] [JBoss JIRA] Commented: (JBREM-166) JMXConnectorServer will not start if using rmi invoker elsewhere

Ron Sigal (JIRA) jira-events at lists.jboss.org
Wed Dec 5 03:13:52 EST 2007


    [ http://jira.jboss.com/jira/browse/JBREM-166?page=comments#action_12390625 ] 
            
Ron Sigal commented on JBREM-166:
---------------------------------

Actually, it's not related to "JBAS-3885: JMXConnectorServer not respecting the -b value".  Instead, it is due to a problem with older version of the Sun jdk: bug ID 4267864: "Can't run create multiple registries in same vm." See http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4267864.  

The problem was that every java.rmi.registry.Registry was identifed by a single ObjID, independent of the port to which the Registry was bound.  So that the following code would fail:

   createRegistry(portNumber);
   createRegistry(portNumber + 1);
   
Apparently, that problem is fixed in jdk 1.5 and later versions of jdk 1.4.  It was tested in two ways.

1. The two lines given above run successfully in jdk 1.4.2_13 and jdk 1.5.0_06 in Windows and jdk 1.5.0_10 in linux.

2. JBossAS 5.0.0 successfully starts with

   (a) a Remoting Connector using the rmi transport
   (b) the "jboss.remoting:service=JMXConnectorServer,protocol=rmi" org.jboss.mx.remoting.service.JMXConnectorServerService MBean.

> JMXConnectorServer will not start if using rmi invoker elsewhere
> ----------------------------------------------------------------
>
>                 Key: JBREM-166
>                 URL: http://jira.jboss.com/jira/browse/JBREM-166
>             Project: JBoss Remoting
>          Issue Type: Bug
>          Components: jmx remoting
>    Affects Versions: JMX Remoting 1.0.1
>            Reporter: Tom  Elrod
>         Assigned To: Ron Sigal
>             Fix For: JMX Remoting 1.0.2, 2.4.0.Beta1 (Pinto)
>
>
> If have a remoting invoker using rmi transport, it will create a rmi registry.  Then when the JMXConnectorServer starts, it will also try to create one.  Even though is on a different port, will get the following exception:
> java.rmi.server.ExportException: internal error: ObjID already in use
> 	at sun.rmi.transport.ObjectTable.putTarget(ObjectTable.java:168)
> 	at sun.rmi.transport.Transport.exportObject(Transport.java:69)
> 	at sun.rmi.transport.tcp.TCPTransport.exportObject(TCPTransport.java:190)
> 	at sun.rmi.transport.tcp.TCPEndpoint.exportObject(TCPEndpoint.java:382)
> 	at sun.rmi.transport.LiveRef.exportObject(LiveRef.java:116)
> 	at sun.rmi.server.UnicastServerRef.exportObject(UnicastServerRef.java:145)
> 	at sun.rmi.registry.RegistryImpl.setup(RegistryImpl.java:92)
> 	at sun.rmi.registry.RegistryImpl.<init>(RegistryImpl.java:78)
> 	at java.rmi.registry.LocateRegistry.createRegistry(LocateRegistry.java:164)
> 	at org.jboss.mx.remoting.service.JMXConnectorServerService.start(JMXConnectorServerService.java:91)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list