4

I am a Java newbie and read an article (https://wiki.shibboleth.net/confluence/display/OpenSAML/OSTwoUsrManJavaInstall) which stated that the only known JAXP providers to work are the Apache Xerces & Xalan projects and that I must endorse a different JAXP.

What does it mean to "endorse" a library in Java?

I am most familiar with c/c++/c#. What would the equivalent action be in any of these environments?

Thronk
  • 624
  • 14
  • 37
  • 2
    "I don't think this word means what you think it means". In other words they are just trying to sound smart and sound stupid as a result. Replace "endorse" with "use". – MK. Dec 04 '12 at 04:51
  • *To endorse* is simply to accept or approve of something. However, if you are endorsing a library in Java, you're probably using it as part of your project. This is comparable to referencing DLLs and assemblies in C#. – FThompson Dec 04 '12 at 04:59

1 Answers1

3

Well you may think of a JAR as DLL(mostly, even though they differ in many aspects). And now what happens if two different JARS with same code base but different versions are found in your project(here different version means different Version of the API).

Now this may lead to conflicts. These conflicts are especially pronounced when you are working with Webservices and XML parsers.

So when some Webservice framework asks you to 'endorse' a jar that means you need to put it in your JDK Endorsed folder -

\lib\endorsed [Microsoft Windows] /lib/endorsed [Solaris or Linux]

Here JAVA-HOME is where your JDK is installed.

Caution - This feature should be used carefully and can have unintended consequences.

Further reading -

Community
  • 1
  • 1
Pushkar
  • 7,450
  • 10
  • 38
  • 57