geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Donald Woods <dwo...@apache.org>
Subject Re: Yoko and java.endorsed.dirs question
Date Tue, 24 Apr 2007 16:03:33 GMT
Yep, I'm going to open a JIRA for it.  Was verifying the fix for G3113 
before diving into this problem, given all the touch points....

-Donald


Rick McGuire wrote:
> Ted Kirby wrote:
>> Given that yoko must come first in java.endorsed.dirs, shouldn't
>> geronimo change to put it first?  Ie in geronimo.sh and
>> geronimo-maven-plugin?
> Well, since the person asking the question is a Geronimo committer who 
> appears to be looking at this issue, I was assuming he'd correct it if 
> that appeared to be the needed solution.
> 
> Rick
> 
> 
>>
>> On 4/24/07, Rick McGuire <rickmcg@gmail.com> wrote:
>>>
>>> Donald Woods wrote:
>>> > I'm actually seeing a failure to start the server on certain IBM
>>> > JVM's, like the IBM SDK for Solaris (or HP-UX.)  This is due to a
>>> > unique packaging change, where they supply a jre/lib/endorsed
>>> > directory which contains the following -
>>> >   ibmcertpathfw.jar        ibmjgssfw.jar            ibmpkcs.jar
>>> >   ibmcertpathprovider.jar  ibmjgssprovider.jar      ibmsaslfw.jar
>>> >   ibmcfw.jar               ibmjmxstubsties.jar      xml.jar
>>> >   ibmext.jar               ibmorb.jar
>>> >   ibmjcefw.jar             ibmorbapi.jar
>>> > For Linux, Windows and AIX, there is no jre/lib/endorsed directory,
>>> > which matches the layout of the Sun JDK for Linux, Windows and 
>>> Solaris.
>>> >
>>> > So, due to the above JDK, don't we need the Geronimo lib/endorsed
>>> > directory before the JDK's?
>>> Ah, ok, I see what's happening.  Ok, here's the situation.  The base
>>> JVM  on the Sun platform has the  org.omg.*  classes used for CORBA
>>> resident on the bootclasspath.  The endorsed.dirs settings is the
>>> JVM-defined way to override certain packages resident in the JVM and
>>> replace them with a vendor-supplied set of packages.  The org.omg.*
>>> classes are specifically mentioned as classes for which this is 
>>> supported.
>>>
>>> For Yoko's case, the Sun-provided org.omg classes do not actually
>>> conform to the CORBA defined signatures for a few of the classes, so it
>>> is necessary to override the JDK-provided set by either adding them to
>>> endorsed.dirs or prepending the jars to the bootstrap classpath.
>>>
>>> Well, from the list above, it's obvious that the IBM JDK is also doing
>>> this.  Note that two of the jars in the list above are "ibmorb.jar" and
>>> "ibmorbapi.jar", which are obviously not compatible with what Yoko is
>>> expecting to see.
>>>
>>> So, to net it out, I'd say that for Sun JDKs, it doesn't matter which
>>> directory comes first in the endorsed.jars list, while for the IBM JDK,
>>> it quite clearly does matter which comes first.  In order for the yoko
>>> ORB to function correctly it must be ahead of the IBM orb implementation
>>> in the search order.
>>>
>>> Rick
>>>
>>> >
>>> >
>>> > -Donald
>>> >
>>> > Rick McGuire wrote:
>>> >> Donald Woods wrote:
>>> >>> What order should the paths be for java.endorsed.dirs?
>>> >>> Should it be -
>>> >>> 1) JDK's lib/endorsed before Geronimo's lib/endorsed
>>> >>> 2) Geronimo's lib/endorsed before the JDK's lib/endorsed
>>> >>>
>>> >>> I'm wondering due to the following warning/exception in the
>>> >>> geronimo-corba module -
>>> >>>   "Incorrect level of org.omg.CORBA classes found.
>>> >>>    Likely cause is an incorrect java.endorsed.dirs configuration"
>>> >>>
>>> >>> Don't we need the Yoko implementation in the endorsed classpath
>>> >>> before the JDK's implementation???
>>> >> For the yoko code, I'm not sure it matters.  The classes the yoko
>>> >> code overrides is contained in the base JVM, not in jar files
>>> >> contained in the endorsed dirs.  Not including the yoko jars in the
>>> >> endorsed dirs is one potential cause of that error (and a frequent
>>> >> one for 2.0 until the CORBA support was fully enabled).  There are
>>> >> other situations as well that can lead to that.  Are you encountering
>>> >> the error, or just wondering because you saw the message in the yoko
>>> >> code?
>>> >>
>>> >> Rick
>>> >>
>>> >>>
>>> >>> -Donald
>>> >>
>>> >>
>>> >>
>>>
>>>
>>
> 
> 
> 

Mime
View raw message