RSS
热门关键字:  数据挖掘  人工智能  数据仓库  搜索引擎  数据挖掘导论
当前位置 :| 首页>编程技术>xml技术>

在Java中,向XSLT文档传入NodeSet类型的参数,该使用何种类型?

来源: 作者: 时间:2008-03-11 点击:

在JAXP1.0中,使用Transformer对象,可以用setParameter函数设置XSLT的参数,Boolean,Double和String类型都测试过了,可以使用,请问NodeSet类型该使用何种类型?
在.net中,NodeSet类型对应的是System.Xml.XPath.XPathNodeIterator。Java中我测试过Node,NodeList好像都不行,该如何用?请指教。
另,由于我的XSLT想适用于.net和j2ee两个平台,所以使用标准的xslt 1.0,因此,最好不要不用传入一个字符串,再用xalan:Nodeset()函数转换,这样的XSLT就不通用了。

这个不是太清楚。如果有简单代码,可以发来测试

关注

XSLT文件如下:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
   <xsl:param name="Name"/>
   <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
   <xsl:template match="/"> 数据挖掘研究院
     <Toolkit>
       <xsl:copy-of select="$Name"/>
     </Toolkit>
   </xsl:template>
</xsl:stylesheet>


JAVA代码如下:
private static void testXslt2() throws Exception {
String xml = "E:\Temp\a.xml";
String xslt = "E:\Temp\b.xslt";
String output = "e:\birds.xml";
TransformerFactory tf = TransformerFactory.newInstance();
Source xsltSource = new StreamSource(new FileInputStream(xslt));
Transformer transform = tf.newTransformer(xsltSource);
String d = "Good";
transform.setParameter("Name", d);

Source xmlSource = new StreamSource(new FileInputStream(xml)); 数据挖掘实验室
Result result = new StreamResult(new FileOutputStream(output));
transform.transform(xmlSource, result);
}
关键就是setParameter那里,我该输入什么样的类型,XSLT那里的会认为参数$Name是一个NodeSet。

引用 1 楼 net_lover 的回复:
这个不是太清楚。如果有简单代码,可以发来测试

java不懂,只能看看.

Create By Any-Extract(WL-AE) 数据挖掘研究院

最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
匿名?