Re: FYI - ORB classloader change in Java 7u55, Java 8u5 - Suggestions needed

Ravindra Kumar <[email protected]>
Newsgroups gmane.comp.corba.jacorb.devel
Message-ID <CAKa22PzPOgJLqkpi6dqg1gxOUR4csuLtS89srL312Cspgdq1Hw@mail.gmail.com>
Hi
Apparently i have also encountered the same issue. It is a bug definitely.

thanks
rainvdra


On Sat, May 10, 2014 at 12:42 AM, Timothy Astle <[email protected]>wrote:

> http://hg.openjdk.java.net/jdk7u/jdk7u60/corba/rev/a8d27c3fc4e4
>
> The change looks to be introduced into:
> * Java 8 update 5
> * Java 7 update 55
> * Java 6 (looks like it was backported there too)
>
> It appears that people are just starting to encounter this issue as they
> update their JREs:
> * https://java.net/jira/browse/GLASSFISH-21047
> * http://stackoverflow.com/questions/23225144/java-7u55-
> eclipse-system-fragment-classloader
>
> It can affect web applications that are distributing JacORB within the web
> application itself.  Oracle changed the classloader that searches for the
> ORBSingletonClass, so now the implementation class must be on the System
> classpath, not the web application's classpath, else the JRE will not find
> the implementation.  You can see how this applies to servlet containers
> here: http://tomcat.apache.org/tomcat-7.0-doc/class-loader-howto.html
>
> People will most likely see this exception when it is encountered:
>
> Caused by: org.omg.CORBA.INITIALIZE: can't instantiate default ORB
> implementation com.sun.corba.ee.impl.orb.ORBSingleton vmcid: 0x0 minor
> code: 0 completed: No
> at org.omg.CORBA.ORB.create_impl_with_systemclassloader(ORB.java:309)
> at org.omg.CORBA.ORB.init(ORB.java:294)
>
> I was in contact with the committer from Oracle today.  He says this is
> not a bug, but they admit that the documentation on the change was poor and
> they've been getting a fair amount of issues filed about it in their bug
> database (http://bugs.java.com).  I believe they aim on remedying this.
>
> So I'm left with a question to the experienced JacORB developers:
>
> Is there a way that I can distribute JacORB within a WAR file and have it
> work given the breaking change in the JRE?  I was basically just doing this:
>
> Properties props = new Properties();
> props.setProperty("org.omg.CORBA.ORBClass", "org.jacorb.orb.ORB");
> props.setProperty("org.omg.CORBA.ORBSingletonClass",
> "org.jacorb.orb.ORBSingleton");
> org.jacorb.orb.ORB orb = (org.jacorb.orb.ORB) org.omg.CORBA.ORB.init(args,
> props);
>
> I know the JacORB docs always mention supplying the ORB to the
> bootclasspath (http://www.jacorb.org/TomcatHowto.html), but I didn't seem
> to have any problems just bundling it into the WAR itself.
>
> Any tips would be appreciated,
>
> --
> Tim Astle
> _______________________________________________
> jacorb-developer maillist  -  [email protected].
> inf.fu-berlin.de
> https://lists.spline.inf.fu-berlin.de/mailman/listinfo/jacorb-developer
>
_______________________________________________
jacorb-developer maillist  -  [email protected]
https://lists.spline.inf.fu-berlin.de/mailman/listinfo/jacorb-developer
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.