geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Donald Woods <>
Subject Re: Yoko and java.endorsed.dirs question
Date Tue, 24 Apr 2007 18:15:39 GMT
Along the same train of thought - Should we always place the Geronimo 
server's lib/ext before the JVM's?


Rick McGuire 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

View raw message