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 <[EMAIL PROTECTED]> 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
>>
>>
>>




Reply via email to