geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rick McGuire <rick...@gmail.com>
Subject Re: Yoko and java.endorsed.dirs question
Date Tue, 24 Apr 2007 15:22:03 GMT
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