Subject: Re: [xsl] How to: Returning HTML Elements From a Saxon Extension Function (6.5.x) From: "W. Eliot Kimber" <eliot@xxxxxxxxxx> Date: Fri, 18 Apr 2003 10:29:27 -0500 |
W. Eliot Kimber wrote:
My analysis is correct--turns out one of my collegues had already figured this out and I didn't know it. What I had missed was the the "Parse()" method on the Saxon DocumentBuilderImpl class, which allows you to pass in a string to be parsed more or less directly. Here's the basic pattern:
public NodeInfo generateResultTree(String markup) { java.io.ByteArrayInputStream bais = new ByteArrayInputStream(markup.getBytes()); org.xml.sax.InputSource isource = null; try { isource = new InputSource(bais); } catch (org.xml.sax.SAXException e) { e.printStackTrace(); } org.w3c.dom.Document root = new com.icl.saxon.om.DocumentBuilderImpl().parse(isource); return (NodeInfo)(root.getDocumentElement()); }
public NodeInfo generateMarkup(String markupString) { ByteArrayOutputStream baos = new ByteArrayOutputStream();
OutputStreamWriter osw = null; // NOTE: the following exceptions should never happen, // so there's no point in trapping them. try { osw = new OutputStreamWriter(baos, "UTF-8"); } catch (UnsupportedEncodingException e2) { e2.printStackTrace(); } try { osw.write(markupString); } catch (IOException e3) { e3.printStackTrace(); } try { osw.flush(); osw.close(); } catch (IOException e4) { e4.printStackTrace(); } ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); InputSource isource = new InputSource(bais); Document root = null; try { root = new DocumentBuilderImpl().parse(isource); } catch (SAXException e1) { e1.printStackTrace(); } return (NodeInfo)(root.getDocumentElement()); }
-- W. Eliot Kimber, eliot@xxxxxxxxxx Consultant, ISOGEN International
1016 La Posada Dr., Suite 240 Austin, TX 78752 Phone: 512.656.4139
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] How to: Returning HTML El, W. Eliot Kimber | Thread | RE: [xsl] How to: Returning HTML El, Michael Kay |
Re: [xsl] splitting a process into , Wendell Piez | Date | Re: [xsl] fetch value from processi, Oleg Tkachenko |
Month |