org.jdom.transform
Class XSLTransformer
java.lang.Object
org.jdom.transform.XSLTransformer
public class XSLTransformer
extends java.lang.Object
A convenience class to handle simple transformations. The JAXP TrAX classes
have more bells and whistles and can be used with
JDOMSource
and
JDOMResult
for advanced uses. This class handles the common case and
presents a simple interface. XSLTransformer is thread safe and may be
used from multiple threads.
XSLTransformer transformer = new XSLTransformer("file.xsl");
Document x2 = transformer.transform(x); // x is a Document
Document y2 = transformer.transform(y); // y is a Document
JDOM relies on TrAX to perform the transformation.
The
javax.xml.transform.TransformerFactory
Java system property
determines which XSLT engine TrAX uses. Its value should be
the fully qualified name of the implementation of the abstract
javax.xml.transform.TransformerFactory
class.
Values of this property for popular XSLT processors include:
- Saxon 6.x:
com.icl.saxon.TransformerFactoryImpl
- Saxon 7.x:
net.sf.saxon.TransformerFactoryImpl
- Xalan:
org.apache.xalan.processor.TransformerFactoryImpl
- jd.xslt:
jd.xml.xslt.trax.TransformerFactoryImpl
- Oracle:
oracle.xml.jaxp.JXSAXTransformerFactory
This property can be set in all the usual ways a Java system property
can be set. TrAX picks from them in this order:
- Invoking
System.setProperty( "javax.xml.transform.TransformerFactory",
"classname
")
- The value specified at the command line using the
-Djavax.xml.transform.TransformerFactory=
classname
option to the java interpreter
- The class named in the
lib/jaxp.properties
properties file
in the JRE directory, in a line like this one:
javax.xml.parsers.DocumentBuilderFactory=classname
- The class named in the
META-INF/services/javax.xml.transform.TransformerFactory
file
in the JAR archives available to the runtime
- Finally, if all of the above options fail,
a default implementation is chosen. In Sun's JDK 1.4, this is
Xalan 2.2d10.
Version:
- Jason Hunter
- Elliotte Rusty Harold
XSLTransformer(File stylesheet) -
This will create a new
XSLTransformer by
reading the stylesheet from the specified
File .
|
XSLTransformer(InputStream stylesheet) -
This will create a new
XSLTransformer by
reading the stylesheet from the specified
InputStream .
|
XSLTransformer(Reader stylesheet) -
This will create a new
XSLTransformer by
reading the stylesheet from the specified
Reader .
|
XSLTransformer(String stylesheetSystemId) - Creates a transformer for a given stylesheet system id.
|
XSLTransformer(Document stylesheet) -
This will create a new
XSLTransformer by
reading the stylesheet from the specified
Document .
|
List | transform(List inputNodes) - Transforms the given input nodes to a list of output nodes.
|
Document | transform(Document inputDoc) - Transforms the given document to an output document.
|
XSLTransformer
public XSLTransformer(File stylesheet)
throws XSLTransformException
This will create a new XSLTransformer
by
reading the stylesheet from the specified
File
.
stylesheet
- File
from which the stylesheet is read.
XSLTransformException
- when an IOException, format error, or
something else prevents the stylesheet from being compiled
XSLTransformer
public XSLTransformer(InputStream stylesheet)
throws XSLTransformException
This will create a new XSLTransformer
by
reading the stylesheet from the specified
InputStream
.
stylesheet
- InputStream
from which the stylesheet is read.
XSLTransformException
- when an IOException, format error, or
something else prevents the stylesheet from being compiled
XSLTransformer
public XSLTransformer(Reader stylesheet)
throws XSLTransformException
This will create a new XSLTransformer
by
reading the stylesheet from the specified
Reader
.
stylesheet
- Reader
from which the stylesheet is read.
XSLTransformException
- when an IOException, format error, or
something else prevents the stylesheet from being compiled
XSLTransformer
public XSLTransformer(String stylesheetSystemId)
throws XSLTransformException
Creates a transformer for a given stylesheet system id.
stylesheetSystemId
- source stylesheet as a Source object
XSLTransformException
- if there's a problem in the TrAX back-end
XSLTransformer
public XSLTransformer(Document stylesheet)
throws XSLTransformException
This will create a new XSLTransformer
by
reading the stylesheet from the specified
Document
.
stylesheet
- Document
containing the stylesheet.
XSLTransformException
- when the supplied Document
is not syntactically correct XSLT
transform
public List transform(List inputNodes)
throws XSLTransformException
Transforms the given input nodes to a list of output nodes.
inputNodes
- input nodes
- transformed output nodes
XSLTransformException
- if there's a problem in the transformation
Copyright B) 2004 Jason Hunter, Brett McLaughlin. All Rights Reserved.