Stephane Bailliez wrote: > > > -----Original Message----- > > From: Stefan Bodewig [mailto:[EMAIL PROTECTED] > > > On Tue, 30 Oct 2001, Stephane Bailliez <[EMAIL PROTECTED]> > > wrote: > > > > > Any objection to use xml-apis.jar from xml-commons ? > > > > I tried to find a reference to xml-commons at xml.apache.org to no > > avail. The readme.html in xml-commons CVS is five months old. > > Seems to be an undercover project :-) > I'm a big supporter of it though, I'm tired of having 10 times dom, sax, > jaxp interfaces in my classpath and all the problems related to that.
I'm not sure I agree, I'd argue to not use xml-apis.jar. For one thing, it may make it more difficult to debug problems b/c a failure may occur b/c of code in a particular version of xml-apis.jar or in the implementation jar file. So the two jar file versions must be kept in sync. Assuming to can convice subprojects to do this, suppose we have each project use xml-apis.jar. They may depend on different versions of xml-apis.jar. For example, Xerces plans to implement drafts of DOM L3 so they may need a version of xml-apis.jar that contains those classes. Xalan may just depend on DOM L2 and may package another version of xml-apis.jar. If a user wants to use both xerces and xalan, then you would need to tell them to use the xerces version instead of the xalan version since DOM L3 is supposed to be backward compatible. On the other hand, if both the APIs and implementation classes are in a single jar file, it would not totally eliminate the problem, however, it is simplified. You would still have to tell users to put xerces.jar before xalan.jar, but at least you don't have to deal with an xml-apis.jar file on the classpath where it may be difficult to know which version it is (the xerces or xalan version). In the above example, I am neglecting the fact that there may be multiple versions of xerces and xalan, also, which probably makes things more complicated. > > Is there a released version of that JAR? IMHO Ant should only rely on > > released versions of something, so we can tell users where to look for > > newer versions. > > We should probably ask Edwin(CC) for more info. The code in xml-commons is > the one that will be use for JDK 1.4, you can look at the log graph it has > all labels since JAXP 1.1 For crimson, here is the way I think it should work... There should be only a single jar file: crimson.jar that contains everything: both implementation and API classes. This is the way that the latest version of crimson works: version 1.1.3. I noticed that Ant uses an older version of crimson that has jaxp.jar. This is similar to the way xerces.jar and xalan.jar are packaged. This makes it easy for developers and users of the software since you do not have to worry about different versions of the api jar file that must match the implementation jar file and there are less jar files to add to a classpath. In terms of how to accomplish this single crimson.jar file, I've changed my mind about how to do this. I think now that xml-commons code should be copied into the crimson repository and checked into CVS. This makes it easier to reproduce a particular crimson version and it allows developers to build crimson.jar without having to check out another module. The copy of SAX, DOM, and javax.xml.parsers code from xml-commons can be done as needed to pick up bug fixes. I'd like to implement a sync-to-xml-commons ant target, but have not gotten around to it yet. > > Edwin, is there a build for common that is planned one day or should we > always put Xalan to have the "latest" JAXP as specified in your FAQ > http://xml.apache.org/~edwingo/jaxp-faq.html#jaxp-ri Actually, I don't think I ever supported a separate xml-apis.jar file, someone else created the build.xml file to produce that jar file. A while back ago, on [email protected], I posted 3 different options for the xml-commons code and which of the options I thought was best. They may be on http://marc.theaimsgroup.com. BTW, it looks like the latest Ant dist comes with crimson 1.1.1. I'd recommend upgrading to at least the latest version 1.1.3. -Edwin PS: I'm cc-ing [email protected] as there were more discussions on xml-commons there recently. -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
