[Home] [By Thread] [By Date] [Recent Entries]
hi,
I have been trying to get a Saxon(6.5.1) transformation to accept xml as a parameter. I am sending it to this list because I don't know if my problem is Saxon specific. I get an error when I access the parameter with XSLT saying 'The value is not a nodeset.' The code looks something like: StringBuffer xml_param_str = new StringBuffer("<?xml version='1.0'?><order id='"); xml_param_str.append(_controller.getHttpServletRequest().getParameter("folder_idref")); xml_param_str.append("'>"); for (int i = 0; i < order_list.length; i++) { xml_param_str.append("<item id='"); xml_param_str.append(order_list[i]); xml_param_str.append("'/>"); } xml_param_str.append("</order>"); System.out.println("xml_param_str: " + xml_param_str); /* prints something like: <?xml version='1.0'?><order id='f123'><item id='p234'/><item id='p345'/><item id='p456'/></order> */ StringReader sr = new StringReader(xml_param_str.toString()); StreamSource ss = new StreamSource(sr); Transformer t = TransformerFactory.newInstance().newTransformer(); DOMResult xml_param_tree = new DOMResult(); t.transform(ss, xml_param_tree); DocumentInfo root = (DocumentInfo)xml_param_tree.getNode(); System.out.println("root: " + root); /* prints out the id for com.icl.tinytree.TinyDocumentImpl */ real_transformer.setParameter("folder_nav_order", root); /* and then I perform the 'real' transformation */
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|

Cart



