Bugzilla 23455. git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@395723 13f79535-47bb-0310-9956-ffa450edef68master
| @@ -74,6 +74,9 @@ Changes that could break older environments: | |||
| * A bug in SQLExec would prevent the execution of trailing, | |||
| non-semicolon-delimited statements. Bugzilla Report 37764. | |||
| * support for the XSL:P XML parser has been removed. | |||
| Bugzilla Report 23455. | |||
| Fixed bugs: | |||
| ----------- | |||
| @@ -209,10 +209,6 @@ | |||
| </or> | |||
| </selector> | |||
| <selector id="needs.xslp"> | |||
| <filename name="${optional.package}/XslpLiaison*"/> | |||
| </selector> | |||
| <selector id="needs.apache-resolver"> | |||
| <filename name="${apache.resolver.type.package}/**"/> | |||
| </selector> | |||
| @@ -419,9 +415,6 @@ | |||
| <available resource="META-INF/services/javax.xml.transform.TransformerFactory"/> | |||
| </or> | |||
| </condition> | |||
| <available property="xslp.present" | |||
| classname="com.kvisco.xsl.XSLProcessor" | |||
| classpathref="classpath"/> | |||
| <available property="apache.resolver.present" | |||
| classname="org.apache.xml.resolver.tools.CatalogResolver" | |||
| classpathref="classpath"/> | |||
| @@ -682,7 +675,6 @@ | |||
| <selector refid="needs.trax" unless="trax.present"/> | |||
| <selector refid="needs.xalan1" unless="xalan.present"/> | |||
| <selector refid="needs.xslp" unless="xslp.present"/> | |||
| <selector refid="needs.apache-resolver" unless="apache.resolver.present"/> | |||
| <selector refid="needs.junit" unless="junit.present"/> | |||
| <selector refid="needs.apache-regexp" | |||
| @@ -865,7 +857,6 @@ | |||
| <or> | |||
| <selector refid="needs.trax"/> | |||
| <selector refid="needs.xalan1"/> | |||
| <selector refid="needs.xslp"/> | |||
| <selector refid="needs.apache-resolver"/> | |||
| <selector refid="needs.junit"/> | |||
| <selector refid="needs.apache-regexp"/> | |||
| @@ -913,7 +904,6 @@ | |||
| <optional-jar dep="trax"/> | |||
| <optional-jar dep="xalan1"/> | |||
| <optional-jar dep="xslp"/> | |||
| <optional-jar dep="apache-resolver"/> | |||
| <optional-jar dep="junit"/> | |||
| <optional-jar dep="apache-regexp"/> | |||
| @@ -1737,8 +1727,6 @@ | |||
| unless="bsf.present"/> | |||
| <exclude name="${optional.package}/XalanLiaisonTest.java" | |||
| unless="xerces1.present"/> | |||
| <exclude name="${optional.package}/XslpLiaisonTest.java" | |||
| unless="xerces1.present"/> | |||
| <exclude name="${ant.package}/IncludeTest.java" | |||
| unless="xerces1.present"/> | |||
| <exclude name="${type.package}/selectors/ModifiedSelectorTest.java" | |||
| @@ -50,10 +50,7 @@ attribute) the implicit fileset formed by this task.</p> | |||
| <p>This task supports the use of a nested <code><param></code> element which is used to pass values | |||
| to an <code><xsl:param></code> declaration.</p> | |||
| <p>This task supports the use of a nested <a href="../CoreTypes/xmlcatalog.html">xmlcatalog</a> | |||
| element which is used to perform Entity and URI resolution</p> | |||
| <p><i><code><style></code> and <code><xslt></code> refer to the same Ant task and can be used interchangeably.</i></p> | |||
| <p>If you want to use Xalan-J 1 or XSL:P, you also Ant optional JARs, | |||
| specifically ant-xalan1.jar and ant-xslp.jar</p> | |||
| element which is used to perform Entity and URI resolution.</p> | |||
| <h3>Parameters</h3> | |||
| <table border="1" cellpadding="2" cellspacing="0"> | |||
| <tr> | |||
| @@ -83,9 +80,12 @@ element which is used to perform Entity and URI resolution</p> | |||
| <tr> | |||
| <td valign="top">style</td> | |||
| <td valign="top">name of the stylesheet to use - given either relative | |||
| to the project's basedir or as an absolute path | |||
| <em><strong>DEPRECATED</strong> - can be specified as a path relative | |||
| to the basedir attribute of this task as well</em>. | |||
| to the project's basedir or as an absolute path.<br/> | |||
| <br/> | |||
| <em>deprecated variation :</em> <br/> | |||
| If the stylesheet cannot be found, and if you have specified the | |||
| attribute basedir for the task, ant will assume that the style | |||
| attribute is relative to the basedir of the task. | |||
| </td> | |||
| <td align="center" valign="top">Yes</td> | |||
| </tr> | |||
| @@ -110,16 +110,20 @@ element which is used to perform Entity and URI resolution</p> | |||
| <tr> | |||
| <td valign="top">processor</td> | |||
| <td valign="top">name of the XSLT processor to use. Permissible values are | |||
| "trax" for a TraX compliant processor (ie JAXP interface | |||
| implementation such as Xalan 2 or Saxon), | |||
| "xslp" for the XSL:P processor, "xalan" for | |||
| the Apache XML Xalan (version 1) processor the name of an | |||
| arbitrary XSLTLiaison class. Defaults to trax, followed by xalan | |||
| and then xslp (in that order). The first one found in your class | |||
| <td valign="top">name of the XSLT processor to use. | |||
| Permissible values are :<ul> | |||
| <li>"trax" for a TraX compliant processor (ie JAXP interface | |||
| implementation such as Xalan 2 or Saxon)</li> | |||
| <li>"xalan" for | |||
| the Apache XML Xalan (version 1) processor</li> | |||
| <li>the name of a custom class implementing the interface | |||
| <code>org.apache.tools.ant.taskdefs.XSLTLiaison.</code></li> | |||
| </ul> | |||
| Defaults to trax, followed by xalan | |||
| The first one found in your class | |||
| path is the one that is used. | |||
| <em><strong>DEPRECATED</strong> - XSL:P and xalan are deprecated and no | |||
| <br/> | |||
| <em><strong>DEPRECATED</strong> - xalan (xalan1) is deprecated and no | |||
| more supported.</em>. | |||
| </td> | |||
| <td align="center" valign="top">No</td> | |||
| @@ -356,7 +356,7 @@ for examples on how to do this for your operating system. </p> | |||
| <p><b>Note</b>: The bootstrap process of Ant requires a greedy | |||
| compiler like Sun's javac or jikes. It does not work with gcj or | |||
| kjc.</b> | |||
| kjc.</p> | |||
| <p>Make sure you have downloaded any auxiliary jars required to | |||
| build tasks you are interested in. These should either be available | |||
| @@ -433,7 +433,7 @@ Installing Ant / Optional Tasks</a> section above.</p> | |||
| <td><b>Available At</b></td> | |||
| </tr> | |||
| <tr> | |||
| <td>An XSL transformer like Xalan or XSL:P</td> | |||
| <td>An XSL transformer like Xalan</td> | |||
| <td>style task</td> | |||
| <td> | |||
| <b>If you use JDK 1.4+, an XSL transformer is already included, so you need not do anything special.</b><br> | |||
| @@ -564,7 +564,7 @@ you need jakarta-oro 2.0.1 or later, and <a href="#commons-net">commons-net</a>< | |||
| target="_top">http://jakarta.apache.org/log4j/docs/index.html</a></td> | |||
| </tr> | |||
| <tr> | |||
| <td><a name="commons-net">commons-net.jar</td> | |||
| <td><a name="commons-net">commons-net.jar</a></td> | |||
| <td>ftp, rexec and telnet tasks<br> | |||
| jakarta-oro 2.0.1 or later is required in any case together with commons-net.<br> | |||
| For all users, a minimum version of commons-net of 1.4.0 is recommended. Earlier | |||
| @@ -649,7 +649,8 @@ code will check and print the following things. </p> | |||
| <ul> | |||
| <li>The version of ant.jar and ant-optional.jar -and that they match</li> | |||
| <li>The version of ant.jar and of the ant-*.jar containing the optional tasks - | |||
| and whether they match</li> | |||
| <li>Which JAR files are int ANT_HOME/lib | |||
| @@ -1,5 +1,5 @@ | |||
| /* | |||
| * Copyright 2000-2005 The Apache Software Foundation | |||
| * Copyright 2000-2006 The Apache Software Foundation | |||
| * | |||
| * Licensed under the Apache License, Version 2.0 (the "License"); | |||
| * you may not use this file except in compliance with the License. | |||
| @@ -96,10 +96,6 @@ public class XSLTProcess extends MatchingTask implements XSLTLogger { | |||
| private static final String TRAX_LIAISON_CLASS = | |||
| "org.apache.tools.ant.taskdefs.optional.TraXLiaison"; | |||
| /** Name of the now-deprecated XSLP Liaison class */ | |||
| private static final String XSLP_LIAISON_CLASS = | |||
| "org.apache.tools.ant.taskdefs.optional.XslpLiaison"; | |||
| /** Name of the now-deprecated Xalan liaison class */ | |||
| private static final String XALAN_LIAISON_CLASS = | |||
| "org.apache.tools.ant.taskdefs.optional.XalanLiaison"; | |||
| @@ -169,11 +165,6 @@ public class XSLTProcess extends MatchingTask implements XSLTLogger { | |||
| * @since Ant 1.7 | |||
| */ | |||
| public static final String PROCESSOR_XALAN1 = "xalan"; | |||
| /** | |||
| * The xsl:p processor (deprecated option) | |||
| * @since Ant 1.7 | |||
| */ | |||
| public static final String PROCESSOR_XSLP = "xslp"; | |||
| /** | |||
| * Creates a new XSLTProcess Task. | |||
| @@ -430,8 +421,7 @@ public class XSLTProcess extends MatchingTask implements XSLTLogger { | |||
| /** | |||
| * Set the name of the XSL processor to use; optional, default trax. | |||
| * Other values are "xalan" for Xalan1 and "xslp" for XSL:P, though the | |||
| * later is strongly deprecated. | |||
| * Other values are "xalan" for Xalan1 | |||
| * | |||
| * @param processor the name of the XSL processor | |||
| */ | |||
| @@ -472,10 +462,6 @@ public class XSLTProcess extends MatchingTask implements XSLTLogger { | |||
| String classname; | |||
| if (proc.equals(PROCESSOR_TRAX)) { | |||
| classname= TRAX_LIAISON_CLASS; | |||
| } else if (proc.equals(PROCESSOR_XSLP)) { | |||
| log("DEPRECATED - xslp processor is deprecated. Use trax " | |||
| + "instead."); | |||
| classname = XSLP_LIAISON_CLASS; | |||
| } else if (proc.equals(PROCESSOR_XALAN1)) { | |||
| log("DEPRECATED - xalan processor is deprecated. Use trax " | |||
| + "instead."); | |||
| @@ -724,7 +710,7 @@ public class XSLTProcess extends MatchingTask implements XSLTLogger { | |||
| */ | |||
| protected XSLTLiaison getLiaison() { | |||
| // if processor wasn't specified, see if TraX is available. If not, | |||
| // default it to xslp or xalan, depending on which is in the classpath | |||
| // default it to xalan, depending on which is in the classpath | |||
| if (liaison == null) { | |||
| if (processor != null) { | |||
| try { | |||
| @@ -739,13 +725,8 @@ public class XSLTProcess extends MatchingTask implements XSLTLogger { | |||
| try { | |||
| resolveProcessor(PROCESSOR_XALAN1); | |||
| } catch (Throwable e2) { | |||
| try { | |||
| resolveProcessor(PROCESSOR_XSLP); | |||
| } catch (Throwable e3) { | |||
| e3.printStackTrace(); | |||
| e2.printStackTrace(); | |||
| throw new BuildException(e1); | |||
| } | |||
| e2.printStackTrace(); | |||
| throw new BuildException(e1); | |||
| } | |||
| } | |||
| } | |||
| @@ -1,65 +0,0 @@ | |||
| /* | |||
| * Copyright 2000-2002,2004 The Apache Software Foundation | |||
| * | |||
| * Licensed under the Apache License, Version 2.0 (the "License"); | |||
| * you may not use this file except in compliance with the License. | |||
| * You may obtain a copy of the License at | |||
| * | |||
| * http://www.apache.org/licenses/LICENSE-2.0 | |||
| * | |||
| * Unless required by applicable law or agreed to in writing, software | |||
| * distributed under the License is distributed on an "AS IS" BASIS, | |||
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |||
| * See the License for the specific language governing permissions and | |||
| * limitations under the License. | |||
| * | |||
| */ | |||
| package org.apache.tools.ant.taskdefs.optional; | |||
| import com.kvisco.xsl.XSLProcessor; | |||
| import com.kvisco.xsl.XSLReader; | |||
| import com.kvisco.xsl.XSLStylesheet; | |||
| import java.io.File; | |||
| import java.io.FileOutputStream; | |||
| import java.io.OutputStreamWriter; | |||
| import org.apache.tools.ant.taskdefs.XSLTLiaison; | |||
| /** | |||
| * Concrete liaison for XSLP | |||
| * | |||
| * @since Ant 1.1 | |||
| */ | |||
| public class XslpLiaison implements XSLTLiaison { | |||
| protected XSLProcessor processor; | |||
| protected XSLStylesheet xslSheet; | |||
| public XslpLiaison() { | |||
| processor = new XSLProcessor(); | |||
| // uh ?! I'm forced to do that otherwise a setProperty crashes | |||
| // with NPE ! I don't understand why the property map is static | |||
| // though... how can we do multithreading w/ multiple identical | |||
| // parameters ? | |||
| processor.getProperty("dummy-to-init-properties-map"); | |||
| } | |||
| public void setStylesheet(File fileName) throws Exception { | |||
| XSLReader xslReader = new XSLReader(); | |||
| // a file:/// + getAbsolutePath() does not work here | |||
| // it is really the pathname | |||
| xslSheet = xslReader.read(fileName.getAbsolutePath()); | |||
| } | |||
| public void transform(File infile, File outfile) throws Exception { | |||
| FileOutputStream fos = new FileOutputStream(outfile); | |||
| // XSLP does not support encoding...we're in hot water. | |||
| OutputStreamWriter out = new OutputStreamWriter(fos, "UTF8"); | |||
| processor.process(infile.getAbsolutePath(), xslSheet, out); | |||
| } | |||
| public void addParam(String name, String expression) { | |||
| processor.setProperty(name, expression); | |||
| } | |||
| } //-- XSLPLiaison | |||
| @@ -1,33 +0,0 @@ | |||
| package org.apache.tools.ant.taskdefs.optional; | |||
| import org.apache.tools.ant.taskdefs.XSLTLiaison; | |||
| /* | |||
| * Copyright 2001-2002,2004 The Apache Software Foundation | |||
| * | |||
| * Licensed under the Apache License, Version 2.0 (the "License"); | |||
| * you may not use this file except in compliance with the License. | |||
| * You may obtain a copy of the License at | |||
| * | |||
| * http://www.apache.org/licenses/LICENSE-2.0 | |||
| * | |||
| * Unless required by applicable law or agreed to in writing, software | |||
| * distributed under the License is distributed on an "AS IS" BASIS, | |||
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |||
| * See the License for the specific language governing permissions and | |||
| * limitations under the License. | |||
| * | |||
| */ | |||
| /** | |||
| * XSLP Liaison testcase | |||
| */ | |||
| public class XslpLiaisonTest extends AbstractXSLTLiaisonTest { | |||
| public XslpLiaisonTest(String name){ | |||
| super(name); | |||
| } | |||
| protected XSLTLiaison createLiaison() throws Exception { | |||
| return new XslpLiaison(); | |||
| } | |||
| } | |||