Hello:
I have found the thread where the choice of JAXP/xerces/xalan jar files to include in Ant 1.5 was discussed:
http://marc.theaimsgroup.com/?t=101838850500001&r=1&w=2
Stefan Bodewig was the one who expressed reservations about including the Xalan jar files,
but he did not explicitly veto the idea. His concern [ Stefan correct me if I am wrong here ] is that
we should minimize the number of third party jar files that we ship with b/c then you
have the problem that they get out of date-- right? Each of the respective Apache projects:
Ant, Xerces, and Xalan are on different release schedules, so by only including _absolutely necessary_ jar files,
you minimize the problem.
Here is my take on the issue. Ant release 1.4.1 INCLUDES jaxp.jar That means that my new "XMLCatalog.java" code
compiles just fine using Ant 1.4.1
By removing jaxp.jar from the bootstrap class path in 1.5, we have REMOVED APIs that used to be there. My code was
simply the first place to demonstrate this fact. There is no telling what ELSE we might break. For example,
third party tasks that used to compile now won't, etc.
Because "jaxp.jar" _was already_ a part of Ant release 1.4.1, I think the easiest, quickest, and most conservative approach
is simply to put it back.
As far as I know, all that would be required is to add it back to the classpath in "boostrap.bat", "bootstrap.sh", "build.bat", and "build.sh"
Otherwise, I would be even happier if this provided the impetus for bundling Xalan with Ant as well. Then I believe all we would need
would be "xercesImpl.jar", "xml-apis.jar" and "xalan.jar" (xml-apis.jar obviates both jaxp.jar and xmlParserAPIs.jar, right?)
Erik, Stefan, Magesh-- what do you think?
--Craeg
Erik Hatcher wrote:
Yikes! I was concerned about that when I saw the additional imports, but because I have Xalan in my bootstrap classpath it worked I guess.
I +1'd including Xalan as its such a fundamental piece to things like <junitreport> and <xslt> - but I think at least one committer veto'd it? I still support including it.
Erik
Hello:
Responses to previous email are down below, but a bigger issue has come up.
I never realized until this very moment that the xmlParserAPIs.jar that comes with Xerces does __NOT__ contain the full JAXP library. Instead, they chopped it in half and only included the pieces that are actually implemented by xerces. This is bad.
XMLCatalog as I have now modified it makes use of the OTHER pieces of the JAXP library, although it does NOT require actual implementations of the Transformer classes (that is, neither Xalan nor Saxon have to be on the path).
The problem is, bootstrap.bat / boostrap.sh FAIL to build Ant now because of the missing APIs. >:-(
What is the best way to fix this? I remember there was some discussion about including the xalan jar files in Ant/lib: xalan.jar and xml-api.jar
Of course, the Xalan xml-api.jar includes the ENTIRE jaxp library, so there would be considerable overlap with xerces xmlParserAPIs.jar
Another alternative is to include jaxp.jar from JAXP 1.1 At only 28K, it does not add much to the size of the ant download.
Again, however, there would be some overlap with the xerces xmlParserAPIs.jar
Anyway, it seems pretty reasonable to me that Ant would include a jaxp.jar library, as it is intrinsically dependent on much of JAXP. Otherwise, we would have to do something horribly ugly like breaking up XMLCatalog into two pieces. yuk.
Thoughts?
--Craeg
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
