How can I set up my build.xml file to pass Ant command-line parameters to an
XSLT stylesheet without clobbering the default values defined in the stylesheet
in case a command-line parameter is not supplied?
I have an Ant task that performs an XSLT transformation. In the stylesheet I
have defined four parameters with default values. From time to time it may be
necessary to provide alternate values for one or more of these parameters, so I
have set up my build.xml file like this (relevant section only).
<project name="hiring-reports" default="gen-report" basedir="."
xmlns:ora="antlib:net.sf.incanto">
<property name="sql.dir" value="./plsql" />
<property name="xml.dir" value="./xml" />
<property name="xslt.dir" value="./xslt" />
<property name="rpts.dir" value="./rpts" />
<property name="weekly.start.date" value="" />
<property name="weekly.end.date" value="" />
<property name="cumulative.start.date" value="" />
<property name="cumulative.end.date" value="" />
<task>
<style
style="${xslt.dir}/@{stylesheet}"
in = "${xml.dir}/@{infile}"
out="${rpts.dir}/@{outfile}" processor="trax">
<param name="weekly-end-date" expression="${weekly.end.date}"/>
<param name="weekly-start-date" expression="${weekly.start.date}"/>
<param name="cumulative-end-date" expression="${cumulative.end.date}"/>
<param name="cumulative-start-date" expression="${cumulative.start.date}"/>
</style>
</task>
When I supply command-line parameter name and value to Ant for any of these
<param> elements, the values are passed through to the stylesheet.
On the other hand, if I fail to provide a command-line parameter name and
value, Ant "seems" to supply an empty string as the value to the stylesheet
parameter. My stylesheet then replaces the default value defined there with the
empty string, causing my transformation to fail.
--
Charles Knell
[EMAIL PROTECTED] - email
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]