I notice that the xalan.jar file includes the org.w3c.dom.* and org.xml.sax.*
packages. I think this is an unfortunate choice, since it introduces duplicates into
the classpath. Xerces.jar also includes these packages (also a bad idea IMHO). If
both jars are placed in the extensions directory, the user has no control over which
version gets used, and is unable to upgrade to a later version of the DOM and SAX
classes.
As it stands, there are three different versions of these classes included in the
xalan distribution:
xerces.jar
xalan.jar
xml.jar
Poking around with some diff tools, I have found that there are numerous differences.
Suggestion:
Take the classes out of the jar file and make it a stated dependency. Package the
classes in their own (optional) jar file (isn't this what xalan/bin/xml.jar should be
already?).
Thanks
Patch to build.xml:
--- build.xml Fri Aug 31 11:08:34 2001
+++ build2.xml Mon Sep 10 09:52:46 2001
@@ -322,6 +322,8 @@
<patternset><!-- relative to jar/@basedir -->
<exclude name="${xsltc.reldir}/**/*" />
<exclude name="javax/xml/parsers/**" />
+ <exclude name="org/xml/sax/**" />
+ <exclude name="org/w3c/dom/**" />
<exclude name="META-INF/services/javax.xml.parsers*" />
</patternset>
</jar>