|
Subject: [xsl] Saxon setParameter() of node-set problems From: "Shakeel Mahate" <shakeelmahate@xxxxxxxxxxx> Date: Fri, 23 Mar 2001 10:50:18 -0500 |
I want to send a NodeSet to a Saxon transformer via the setParameter()
function.
I have a org.w3c.dom.Document object in memory which I need to send to the
transformer before calling transform.
So, here's the problem, I have not been able to figure out how to transform
org.jdom.Document into a node set as required by Saxon transformer.
I know how to output an org.w3c.dom.Document from a org.jdom.Document
For Xalan, I have tried the following:
XNodeSet nodeSet = new XNodeSet(dom);
transformer.setParameter("referenceXml", nodeSet);
but the xalan:evaluate or any XPath expr on the the parameter referenceXml
do not work.
I know the problem isnt with my XPath expressions because if I set the value
of the parameter, via
<xsl:parameter name="referenceXml">
<xsl:value-of select="document('ref.xml')"/>
</xsl:parameter>
then all of my XPath expressions and xalan:evaluate(....) work correctly
But now when I send the parameter value as shown above, none of the XPath
expressions evaluate.
I want to give up on Xalan and try Saxon 6.2.2, but I dont know how to
convert the org.w3c.dom.Document into a node-set expression or DocumentInfo
as expected by
Saxon.
I have tried the following
Builder treeBuilder = new TreeBuilder();
DOMDriver driver = new DOMDriver();
driver.setContentHandler(treeBuilder); // This line does not compile, since
treeBuilder is not a ContentHandler and I have not been able to find an
appropriate ContentHandler
Next I tried the following
InputSource is = new InputSource("dummy");
DOMDriver driver = new DOMDriver();
driver.setStartNode(dom);
is.setSystemId("dummy");
driver.setSystemId("dummy");
SAXSource saxSource = new SAXSource(driver, is);
Builder treeBuilder = new TreeBuilder()
DocumentInfo rootNode = treeBuilder.build(saxSource);
.... code deleted...
transformer.setParameter("referenceXML", rootNode);
......
transformer.transform(streamSource, streamResult);
I get a NullPointerException
at com.icl.saxon.ContentEmitter.getNameCode(ContentEmitter.java:128)
at com.icl.saxon.ContentEmitter.startElement(ContentEmitter.java:118)
at com.icl.saxon.DOMDriver.walkNode(DOMDriver.java:275)
at com.icl.saxon.DOMDriver.parse(DOMDriver.java:191)
at com.icl.saxon.DOMDriver.parse(DOMDriver.java:162)
at com.icl.saxon.Builder.build(Builder.java:263)
at test.TestXPath.main(TestXPath.java:103)
Mike, please help me.
-Shakeel
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| RE: [xsl] XSplit & JavaScript, JSP, skhurshid | Thread | RE: [xsl] Saxon setParameter() of n, Michael Kay |
| [xsl] XSplit & JavaScript, JSP, skhurshid | Date | [xsl] Xalan/Weblogic error, Shane Fatzinger |
| Month |