harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Soeren Strassfeld <nc-stras...@netcologne.de>
Subject Re: External libraries in the bootclasspath
Date Fri, 14 Apr 2006 07:27:29 GMT
Ilya Neverov schrieb:

Hi Ilya,

just followed your link, as I understand it, the endorsed mechanism is 
only for API Classes, which
are developed outside the JCP. This contains the org.w3c, org.xml and 
the CORBA/omg packages, but
not internally used packages. I guess sun in some way trusts those 
library vendors to be downward
compatible, and so not break the API.
And as you said, the endorsed.dir is only for newer versions of 
libraries (the docs explicitly
points to this as well), so Applications, which depend on older 
versions, would still fail.

Thanks,
Soeren

> Hi,
>
> I think we can follow standardized way in this case.
>
>  On 4/11/06, Stepan Mishura <stepan.mishura@gmail.com> wrote:
>   
>> There are no other opinions but I believe this issue needs broader attention
>> so I'd like to start another thread.
>>
>> Harmony has a number of external libraries on the bootclasspath: ICU4C,
>> Xerces/Xalan. What if an app. uses the same library but another version?
>> What if library versions are not compatible? The possible way to resolve the
>> issue to perform repackaging (i.e. put everything external under
>> org.apache.harmony namespace, however I'm not sure that this applicable for
>> ICU4C library).
>>
>> Are there other options?
>>     
>
> Since J2SE 1.4 SUN introduced "Endorsed Standards Override Mechanism"
> for helping users to survive with rapidly evolving versions of popular
> libraries. This mechanism allows overriding implementation of some
> packages included in JRE bundle; the list of packages can be found at
> [1].
>
> Moreover, user can install external library providing version of
> related public API which is newer than API included in given JRE and
> this newer version of API becomes available for applications instead
> of the version bundled with the JRE. This is intended for supporting
> external API-s which are standardized outside of JCP, like CORBA or
> SAX and DOM for XML processing. You can run an app on J2SE 1.4 with
> DOM Level 3 API instead of DOM Level 2 bundled with jdk 1.4.
>
> It's quite easy-to-use mechanism – just put library's jar-files to the
> <java-home>/lib/endorsed directory or point to their location with the
> system property 'java.endorsed.dirs'. I suspect that it's easy for
> implementation also. Looks like that putting referred jar-files before
> system jar-files in bootclasspath would be enough to have such magic
> :) I'm not sure that any certified JRE does check that provided
> jar-files contain classes only related to the list of packages in [1]
> so we would be compatible with them in this place.
>
> [1]  http://java.sun.com/j2se/1.5.0/docs/guide/standards/index.html
>
>   
>> Thanks,
>> Stepan Mishura
>> Intel Middleware Products Division
>>     
>
> Thank you.
> Ilya Neverov,
> Intel Middleware Products Division
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>
>
>   


---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Mime
View raw message