我能够与Saxon一起使用,请参见下面的代码。我认为关键是document.getdocumentElement()作为parm
public String transformResultXML(String xmlSource, Templates xsl,String policyXml ) { String result = ""; try { StringWriter writer = new StringWriter(); StringReader reader2 = new StringReader(policyXml); documentBuilderFactory dfactory = documentBuilderFactory.newInstance( "com.icl.saxon.om.documentBuilderFactoryImpl",null); dfactory.setNamespaceAware(true); documentBuilder docBuilder = dfactory.newdocumentBuilder(); org.w3c.dom.document document = docBuilder.parse(new InputSource(new StringReader(xmlSource))); Transformer transformer = xsl.newTransformer(); transformer.setParameter("RsXml", document.getdocumentElement()); transformer.setOutputProperty(OutputKeys.INDENT, "yes"); transformer.transform(new javax.xml.transform.stream.StreamSource(reader2), new javax.xml.transform.stream.StreamResult(writer)); result = writer.toString(); System.out.println(result); } catch( Exception e ) { e.printStackTrace(); }XSL代码段
<xsl:param name="RsXml" /><xsl:template match="/policy/vehicles"> <xsl:for-each select="$RsXml/InsuranceSvcRs/com.csc_PolicyOrderCurrentCarrierInqRs/PersVeh">



