ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jose Alberto Fernandez" <>
Subject Selecting XML Parsers
Date Tue, 30 Dec 2003 13:24:59 GMT

I am having a very hard time porting my build to 1.6.0.
I would like to get some input on how I should address my problem,
not sure if it is my problem or ANTs.

I need to use Saxon for some of my XSLT transformations, since I am
specific features of it. However, Saxon comes with Aelfred XML parser
is non-validating. Which means that <xmlvalidate/> and <ejbjar/> for
cannot use them.

In 1.5.x I solved this situation by having Saxon.jar outside of ant/lib
and passing it to <style/> in the classpath. That does not seem to work
in 1.6.0 since <style/> only uses the classpath to find the the Liason
but the TRAX liason does not uses it to find the factories.

If I put Saxon.jar in ant/lib. All tasks will start using Aelfred parser
and will break. Even tasks that specify a classpath, they do not use it
to find the parsers.

The main issue here seem to be that non of our tasks set the
before calling the methods on the xml-apis. If the context classloader
where set, one could control on a task by task basis what parsers,
etc, to use. I think the basic problem is in JAXPUtils where non of the
allow passing a classloader. Had the methods allow a classloader, then
they could
have set the contextclassloader appropriatelly, before calling the
XMLAPI library.

Am I doing something wrong? I think we have a backward compatibility
issue here.

Jose Alberto

View raw message