JDK-8042194 : ORB.init() always uses systemclassloader to load org.omg.CORBA.ORBSingletonClass
  • Type: Bug
  • Component: other-libs
  • Sub-Component: corba:orb
  • Affected Version: 7u55
  • Priority: P3
  • Status: Resolved
  • Resolution: Duplicate
  • OS: linux
  • CPU: x86_64
  • Submitted: 2014-04-24
  • Updated: 2017-02-09
  • Resolved: 2014-06-06
Related Reports
Duplicate :  
Description
FULL PRODUCT VERSION :


A DESCRIPTION OF THE PROBLEM :
I cannot find proper subcategory for this issue.

We have custom CORBA implementation and specify org.omg.CORBA.ORBSingletonClass system property.
Our CORBA implemetation classes aren't loaded by system classloader.

In JDK 7u51 or earlier, we can call ORB.init() to obtain ORB singleton instance.
In 7u55, we cannot obtain singleton this way and ORB.init() throws ClassNotFoundException.

So, I read org.omg.CORBA.ORB.java source code and I found that classloader to load ORB Singleton class has been changed to system classloader from thread's context classloader.

Why do you change classloader? I want you to return to old behavior or create compatibility system property.

REGRESSION.  Last worked in version 7u51


REPRODUCIBILITY :
This bug can be reproduced always.


Comments
JDK-8042789 should resolve this issue.
06-06-2014

See the 7u55 release notes for more information about this change. http://www.oracle.com/technetwork/java/javase/7u55-relnotes-2177812.html
14-05-2014