jmx-dev 8001048: Allow IIOP transport to be optional

Alan Bateman Alan.Bateman at oracle.com
Fri Dec 14 13:33:05 PST 2012


I hope this mail doesn't cause Éamonn to choke on his coffee.

The JMX Remote API specifies that the RMI connector support the IIOP 
transport (in addition to the default RMI transport, JRMP). This is 
highly problematic for our efforts to modularize the platform because of 
the dependency on CORBA and the CORBA Tie classes in the 
javax.management.remote.rmi package. It is also problematic for the 
Compact Profiles [1] effort for JDK 8.

This issue has been on the radar for a long time, in fact it is more 
than 3 years ago when we pushed the changes to separate out the 
dependencies on CORBA. It's time to move to the next step, and to that 
end, we are planning to do a Maintenance Release of the JMX Remote API 
to make support for the IIOP transport optional. The changes proposed 
here are the first cut at the changes to the javadoc and some minor 
changes to RMIIIOPServerImpl  that we missed when doing the original 
work to separate out the dependencies. I've also used the opportunity to 
change the tests so that they run when RMI-IIOP is not present.

The webrev with the changes is here:

http://cr.openjdk.java.net/~alanb/8001048/webrev/index.html

On RMIIIOPServerImpl then the reason that toStub and the close* methods 
throw NoSuchObjectException is because that the the IOException that 
would be thrown if RMI-IIOP were present and the object is not exported.

On the tests then I removed System.exit from several tests because this 
isn't allowed in jtreg tests (we probably didn't notice this because the 
tests haven't been failing).

-Alan.

[1] http://openjdk.java.net/jeps/161


More information about the jmx-dev mailing list