[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
How to get the node list?
Subject: How to get the node list? From: Cheun N Chong <cnc99r@xxxxxxxxxxxxxxx> Date: Wed, 19 Apr 2000 14:24:37 +0100 (BST) |
Dear all, Sorry to bother. I need help. I have attach my codes as the following: PrintTreeStructure.java, foo.xml, foo.xsl and the output, tree.xml. I want to make the PrintTreeStructure to print out the nodes of the output of the parser, but the node list length is 0. I am not sure the way I am doing it is correct. I need your expertise indeed. Btw, I am using XML4J and LotusXSL. PrintTreeStructure.java ======================= import java.io.*; import java.net.MalformedURLException; import org.apache.xalan.xslt.XSLTProcessor; import org.apache.xalan.xslt.XSLTInputSource; import org.apache.xalan.xslt.XSLTResultTarget; import org.apache.xalan.xslt.XSLTProcessorFactory; import org.apache.xalan.xpath.xml.TreeWalker; import org.apache.xalan.xpath.xml.FormatterToXML; import org.apache.xerces.dom.DocumentImpl; import org.apache.xerces.dom.NodeImpl; import org.apache.xerces.parsers.DOMParser; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.w3c.dom.Document; import org.xml.sax.InputSource; import org.xml.sax.SAXException; public class PrintTreeStructure { public static void main(String[] args) throws Exception, Throwable { // Create the output file called tree.xml FileOutputStream fileOutput = new FileOutputStream(new File("tree.xml")); // Create an XSLT processor XSLTProcessor processor = XSLTProcessorFactory.getProcessor(); // Create input source documents XSLTInputSource xmlID = new XSLTInputSource("foo.xml"); XSLTInputSource xslID = new XSLTInputSource("foo.xsl"); // Create a DOM Document node to attach the result nodes to Document out = new DocumentImpl(); XSLTResultTarget result = new XSLTResultTarget(out); // Process the source tree and produce the result tree processor.process(xmlID, xslID, result); // Get the node list from the document NodeList nodelist = out.getChildNodes(); // Length of the node list int length = (nodelist != null) ? nodelist.getLength() : 0; System.out.println(length); } } foo.xsl ======= <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="doc"> <out><xsl:value-of select="."/></out> </xsl:template> </xsl:stylesheet> foo.xml ======= <?xml version="1.0"?> <doc>Hello</doc> tree.xml (the output) ===================== <?xml version="1.0" encoding="UTF-8"?> <out>Hello</out> Thousand thanks! Best regards, Cheun Ngen CHONG XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: Multiple Element Values, Rhonda Fischer | Thread | Re: How to get the node list?, Cheun N Chong |
Re: How to print out the value of a, keshlam | Date | Re: How to get the node list?, Cheun N Chong |
Month |
Keywords