Class XSLTProcess

All Implemented Interfaces:
Cloneable, XSLTLogger, SelectorContainer

public class XSLTProcess extends MatchingTask implements XSLTLogger
Processes a set of XML documents via XSLT. This is useful for building views of XML based documentation.
Since:
Ant 1.1
  • Field Details

    • PROCESSOR_TRAX

      public static final String PROCESSOR_TRAX
      The default processor is trax
      Since:
      Ant 1.7
      See Also:
  • Constructor Details

    • XSLTProcess

      public XSLTProcess()
  • Method Details

    • setScanIncludedDirectories

      public void setScanIncludedDirectories(boolean b)
      Whether to style all files in the included directories as well; optional, default is true.
      Parameters:
      b - true if files in included directories are processed.
      Since:
      Ant 1.5
    • setReloadStylesheet

      public void setReloadStylesheet(boolean b)
      Controls whether the stylesheet is reloaded for every transform.

      Setting this to true may get around a bug in certain Xalan-J versions, default is false.

      Parameters:
      b - a boolean value
      Since:
      Ant 1.5.2
    • addMapper

      public void addMapper(Mapper mapper)
      Defines the mapper to map source to destination files.
      Parameters:
      mapper - the mapper to use
      Throws:
      BuildException - if more than one mapper is defined
      Since:
      Ant 1.6.2
    • add

      public void add(ResourceCollection rc)
      Adds a collection of resources to style in addition to the given file or the implicit fileset.
      Parameters:
      rc - the collection of resources to style
      Since:
      Ant 1.7
    • addConfiguredStyle

      public void addConfiguredStyle(Resources rc)
      Add a nested <style> element.
      Parameters:
      rc - the configured Resources object represented as <style>.
      Since:
      Ant 1.7
    • setXslResource

      public void setXslResource(Resource xslResource)
      API method to set the XSL Resource.
      Parameters:
      xslResource - Resource to set as the stylesheet.
      Since:
      Ant 1.7
    • add

      public void add(FileNameMapper fileNameMapper) throws BuildException
      Adds a nested filenamemapper.
      Parameters:
      fileNameMapper - the mapper to add
      Throws:
      BuildException - if more than one mapper is defined
      Since:
      Ant 1.7.0
    • execute

      public void execute() throws BuildException
      Executes the task.
      Overrides:
      execute in class Task
      Throws:
      BuildException - if there is an execution problem.
      To do:
      validate that if either in or out is defined, then both are
    • setForce

      public void setForce(boolean force)
      Set whether to check dependencies, or always generate; optional, default is false.
      Parameters:
      force - true if always generate.
    • setBasedir

      public void setBasedir(File dir)
      Set the base directory; optional, default is the project's basedir.
      Parameters:
      dir - the base directory
    • setDestdir

      public void setDestdir(File dir)
      Set the destination directory into which the XSL result files should be copied to; required, unless in and out are specified.
      Parameters:
      dir - the name of the destination directory
    • setExtension

      public void setExtension(String name)
      Set the desired file extension to be used for the target; optional, default is html.
      Parameters:
      name - the extension to use
    • setStyle

      public void setStyle(String xslFile)
      Name of the stylesheet to use - given either relative to the project's basedir or as an absolute path; required.
      Parameters:
      xslFile - the stylesheet to use
    • setClasspath

      public void setClasspath(Path classpath)
      Set the optional classpath to the XSL processor
      Parameters:
      classpath - the classpath to use when loading the XSL processor
    • createClasspath

      public Path createClasspath()
      Set the optional classpath to the XSL processor
      Returns:
      a path instance to be configured by the Ant core.
    • setClasspathRef

      public void setClasspathRef(Reference r)
      Set the reference to an optional classpath to the XSL processor
      Parameters:
      r - the id of the Ant path instance to act as the classpath for loading the XSL processor
    • setProcessor

      public void setProcessor(String processor)
      Set the name of the XSL processor to use; optional, default trax.
      Parameters:
      processor - the name of the XSL processor
    • setUseImplicitFileset

      public void setUseImplicitFileset(boolean useimplicitfileset)
      Whether to use the implicit fileset.

      Set this to false if you want explicit control with nested resource collections.

      Parameters:
      useimplicitfileset - set to true if you want to use implicit fileset
      Since:
      Ant 1.7
    • addConfiguredXMLCatalog

      public void addConfiguredXMLCatalog(XMLCatalog xmlCatalog)
      Add the catalog to our internal catalog
      Parameters:
      xmlCatalog - the XMLCatalog instance to use to look up DTDs
    • setFileNameParameter

      public void setFileNameParameter(String fileNameParameter)
      Pass the filename of the current processed file as a xsl parameter to the transformation. This value sets the name of that xsl parameter.
      Parameters:
      fileNameParameter - name of the xsl parameter retrieving the current file name
    • setFileDirParameter

      public void setFileDirParameter(String fileDirParameter)
      Pass the directory name of the current processed file as a xsl parameter to the transformation. This value sets the name of that xsl parameter.
      Parameters:
      fileDirParameter - name of the xsl parameter retrieving the current file directory
    • setSuppressWarnings

      public void setSuppressWarnings(boolean b)
      Whether to suppress warning messages of the processor.
      Parameters:
      b - boolean
      Since:
      Ant 1.8.0
    • getSuppressWarnings

      public boolean getSuppressWarnings()
      Whether to suppress warning messages of the processor.
      Returns:
      boolean
      Since:
      Ant 1.8.0
    • setFailOnTransformationError

      public void setFailOnTransformationError(boolean b)
      Whether transformation errors should make the build fail.
      Parameters:
      b - boolean
      Since:
      Ant 1.8.0
    • setFailOnError

      public void setFailOnError(boolean b)
      Whether any errors should make the build fail.
      Parameters:
      b - boolean
      Since:
      Ant 1.8.0
    • setFailOnNoResources

      public void setFailOnNoResources(boolean b)
      Whether the build should fail if the nested resource collection is empty.
      Parameters:
      b - boolean
      Since:
      Ant 1.8.0
    • addSysproperty

      public void addSysproperty(Environment.Variable sysp)
      A system property to set during transformation.
      Parameters:
      sysp - Environment.Variable
      Since:
      Ant 1.8.0
    • addSyspropertyset

      public void addSyspropertyset(PropertySet sysp)
      A set of system properties to set during transformation.
      Parameters:
      sysp - PropertySet
      Since:
      Ant 1.8.0
    • createTrace

      public XSLTProcess.TraceConfiguration createTrace()
      Enables Xalan2 traces and uses the given configuration.

      Note that this element doesn't have any effect with a processor other than trax or if the Transformer is not Xalan2's transformer implementation.

      Returns:
      TraceConfiguration
      Since:
      Ant 1.8.0
    • getTraceConfiguration

      public XSLTProcess.TraceConfiguration getTraceConfiguration()
      Configuration for Xalan2 traces.
      Returns:
      TraceConfiguration
      Since:
      Ant 1.8.0
    • setOut

      public void setOut(File outFile)
      Specifies the output name for the styled result from the in attribute; required if in is set
      Parameters:
      outFile - the output File instance.
    • setIn

      public void setIn(File inFile)
      specifies a single XML document to be styled. Should be used with the out attribute; required if out is set
      Parameters:
      inFile - the input file
    • getFactory

      public XSLTProcess.Factory getFactory()
      Get the factory instance configured for this processor
      Returns:
      the factory instance in use
    • getXMLCatalog

      public XMLCatalog getXMLCatalog()
      Get the XML catalog containing entity definitions
      Returns:
      the XML catalog for the task.
    • getOutputProperties

      public Enumeration<XSLTProcess.OutputProperty> getOutputProperties()
      Get an enumeration on the outputproperties.
      Returns:
      the outputproperties
    • getLiaison

      protected XSLTLiaison getLiaison()
      Get the Liaison implementation to use in processing.
      Returns:
      an instance of the XSLTLiaison interface.
    • createParam

      public XSLTProcess.Param createParam()
      Create an instance of an XSL parameter for configuration by Ant.
      Returns:
      an instance of the Param class to be configured.
    • createOutputProperty

      public XSLTProcess.OutputProperty createOutputProperty()
      Create an instance of an output property to be configured.
      Returns:
      the newly created output property.
      Since:
      Ant 1.5
    • init

      public void init() throws BuildException
      Initialize internal instance of XMLCatalog. Initialize XPath for parameter evaluation.
      Overrides:
      init in class Task
      Throws:
      BuildException - on error
    • configureLiaison

      @Deprecated protected void configureLiaison(File stylesheet) throws BuildException
      Deprecated.
      since Ant 1.7
      Loads the stylesheet and set xsl:param parameters.
      Parameters:
      stylesheet - the file from which to load the stylesheet.
      Throws:
      BuildException - if the stylesheet cannot be loaded.
    • configureLiaison

      protected void configureLiaison(Resource stylesheet) throws BuildException
      Loads the stylesheet and set xsl:param parameters.
      Parameters:
      stylesheet - the resource from which to load the stylesheet.
      Throws:
      BuildException - if the stylesheet cannot be loaded.
      Since:
      Ant 1.7
    • createFactory

      public XSLTProcess.Factory createFactory() throws BuildException
      Create the factory element to configure a trax liaison.
      Returns:
      the newly created factory element.
      Throws:
      BuildException - if the element is created more than one time.
    • handleError

      protected void handleError(String msg)
      Throws an exception with the given message if failOnError is true, otherwise logs the message using the WARN level.
      Parameters:
      msg - String
      Since:
      Ant 1.8.0
    • handleError

      protected void handleError(Throwable ex)
      Throws an exception with the given nested exception if failOnError is true, otherwise logs the message using the WARN level.
      Parameters:
      ex - Throwable
      Since:
      Ant 1.8.0
    • handleTransformationError

      protected void handleTransformationError(Exception ex)
      Throws an exception with the given nested exception if failOnError and failOnTransformationError are true, otherwise logs the message using the WARN level.
      Parameters:
      ex - Exception
      Since:
      Ant 1.8.0