Subject: RE: Output of One Transformation As Input to Another
From: "Schwartz, Rechell R, ALCAS" <rrschwartz@xxxxxxx>
Date: Wed, 6 Nov 2002 15:10:18 -0500
|
Thank you. You were correct. How would I re-write the code below to work
with SAX? Is SAX faster than DOM?
-----Original Message-----
From: Oleg Tkachenko [mailto:olegt@xxxxxxxxxxxxx]
Sent: Wednesday, November 06, 2002 12:15 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: Output of One Transformation As Input to Another
Schwartz, Rechell R, ALCAS wrote:
> I am getting an error intrying to take the output of one
transformation as
> input to another. Following is my code. Any assistance would be
greatly
> appreciated. The error message I get is "Can't have more than one root
in a
> DOM!"
Probably your stylesheet produces ill-formed document with more than 1
root
element, transform to a stream and inspect the result.
> try {
> TransformerFactory tFactory =
TransformerFactory.newInstance();
> String xsl = "/stylesheets/data.xsl";
> Transformer transformer =
tFactory.newTransformer(new
> StreamSource(getClass().getResourceAsStream(xsl)));
> DOMResult domResult = new DOMResult();
> transformer.transform(new StreamSource(new
> StringReader(hand.detailresult)), domResult);
> Document document =
(Document)domResult.getNode();
> xsl = "/stylesheets/format.xsl";
> transformer = tFactory.newTransformer(new
> StreamSource(getClass().getResourceAsStream(xsl)));
> transformer.transform(new DOMSource(document),
new StreamResult(out));
> } catch (Exception e) {
> e.printStackTrace();
> }
PS. What that DOM object is need here for? SAX could be more effective
here.
--
Oleg Tkachenko
eXperanto team
Multiconn Technologies, Israel
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|