Subject: RE: Transformer adds unwanted newlines
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Sun, 5 Oct 2008 22:38:14 +0100
|
> > What happens if you remove the (apparently unnecessary) second step?
>
> Umm, being a bear of very little brain, can you explain what
> I need to change below to do this? Sorry to be so dense...
>
> >> SAXParserFactory spf = SAXParserFactory.newInstance();
> >> spf.setNamespaceAware(true);
> >> SAXParser parser = spf.newSAXParser();
> >> reader = parser.getXMLReader();
> >> stf = (SAXTransformerFactory) TransformerFactory.newInstance();
> >> String s = serializeTree();
> >> System.out.println("DEBUG: " + s); // <------- DEBUG
> >> InputSource input = new InputSource(new StringReader(s));
> >> filter = stf.newXMLFilter(new StreamSource(stylesheet));
> >> filter.setParent(reader);
> >> StreamResult result = new StreamResult(response.getWriter());
> >> Transformer transformer = stf.newTransformer();
> >> SAXSource transformSource = new SAXSource(filter, input);
> >> transformer.transform(transformSource, result);
>
Change it to
> SAXParserFactory spf = SAXParserFactory.newInstance();
> spf.setNamespaceAware(true);
> SAXParser parser = spf.newSAXParser();
> reader = parser.getXMLReader();
> stf = (SAXTransformerFactory) TransformerFactory.newInstance();
> String s = serializeTree();
> System.out.println("DEBUG: " + s); // <------- DEBUG
> InputSource input = new InputSource(new StringReader(s));
> StreamResult result = new StreamResult(response.getWriter());
> Transformer transformer = stf.newTransformer(new
StreamSource(stylesheet));
> SAXSource transformSource = new SAXSource(reader, input);
> transformer.transform(transformSource, result);
Michael Kay
http://www.saxonica.com/
|