JDK 9 org.omg.CORBA.ORBSingletonClass loading will not use context class loader

Alan Bateman Alan.Bateman at oracle.com
Tue Oct 18 20:30:23 UTC 2016

On 18/10/2016 19:57, Tom Hood wrote:

> Hello,
> We have a Java Webstart application that uses CORBA and requires an old
> version of the Visibroker ORB (5.2.1) that will not launch with Java 9 due
> to its inclusion of a change originally added to 7u55 and later backed out:
>         Bug ID: JDK-8042789 org.omg.CORBA.ORBSingletonClass loading no
> longer uses context class loader
> <http://bugs.java.com/view_bug.do?bug_id=8042789>
> What approaches should we consider for our application to support Java 9 ?
The singleton ORB is the system-wide type code factory so having it be 
located via the TCCL is highly problematic (many reasons including 
security, memory leaks, and of course it's not going to work then there 
two or more applications/contexts in the same VM trying to do the same 

I assume your application can use the 2-arg ORB.init to create the ORB, 
in which case the implementation will be located via the TCCL (so you 
can bundle the ORB implementation with the application). From your mail 
then it sounds like the issue is that something in Visibroker is using 
the zero-arg ORB.init and so gets the JDK ORB as the singleton ORB. Does 
this lead to an interop issue or does Visibroker assuming the singleton 
ORB is its own type?


More information about the core-libs-dev mailing list