| java.lang.Object javax.xml.transform.sax.SAXSource com.thoughtworks.xstream.io.xml.TraxSource
TraxSource | public class TraxSource extends SAXSource (Code) | | A
SAXSource JAXP TrAX Source that enables using XStream object serialization as
direct input for XSLT processors without resorting to an intermediate representation such as
text XML, DOM or DOM4J. The following example shows how to apply an XSL Transformation
to a set of Java objects gathered into a List (source ):
public static String transform(List source, String stylesheet) {
try {
Transformer transformer = TransformerFactory.newInstance().newTransformer(
new StreamSource(stylesheet));
TraxSource in = new TraxSource(source);
Writer out = new StringWriter();
transformer.transform(in, new StreamResult(out));
return out.toString();
} catch (TransformerException e) {
throw new RuntimeException("XSLT Transformation failed", e);
}
}
author: Laurent Bihanic |
Constructor Summary | |
public | TraxSource() Creates a XStream TrAX source. | public | TraxSource(Object source) Creates a XStream TrAX source, specifying the object to marshal. | public | TraxSource(Object source, XStream xstream) Creates a XStream TrAX source, specifying the object to marshal and a configured (with
aliases) XStream facade. | public | TraxSource(List source) Creates a XStream TrAX source, setting the objects to marshal. | public | TraxSource(List source, XStream xstream) Creates a XStream TrAX source, setting the objects to marshal and a configured (with
aliases) XStream facade. |
XSTREAM_FEATURE | final public static String XSTREAM_FEATURE(Code) | | If
javax.xml.transform.TransformerFactory.getFeature returns true
when passed this value as an argument, the Transformer natively supports XStream.
Note: This implementation does not override the
SAXSource.FEATURE value defined by its superclass to be considered as a SAXSource
by Transformer implementations not natively supporting this XStream-specific source
|
TraxSource | public TraxSource()(Code) | | Creates a XStream TrAX source.
|
getXMLReader | public XMLReader getXMLReader()(Code) | | Returns the XMLReader to be used for the Source. This implementation returns a
specific XMLReader (
SaxWriter ) generating the XML from a list of input objects.
an XMLReader generating the XML from a list of input objects. |
setSourceAsList | public void setSourceAsList(List list)(Code) | | Sets the list of objects to marshal. When dealing with non-text input (such as SAX
or DOM), XSLT processors support multiple root node children for the source tree (see section 3.1 of the "XSL
Transformations (XSLT) Version 1.0" specification. Using a list of objects as source
makes use of this feature and allows creating XML documents merging the XML serialization
of several Java objects.
Parameters: list - the list of objects to marshal. throws: IllegalArgumentException - if source is null orempty. |
setXStream | public void setXStream(XStream xstream)(Code) | | Sets the XStream facade to use when marshalling objects.
Parameters: xstream - a configured XStream facade. throws: IllegalArgumentException - if xstream is null . |
|
|