大家好,最近一直在搞
XML的转换,由于原本对于XML没有过多的
研究,导致现在使用起来真是非常的艰难,但是自己还是克服了一点困难,留下的困难实在是克服不了了,所以向大家请教一下。(这里就不乱扯了,嘿嘿)
1.问题
现在我使用的是Altova 公司的Altova MapForce工具生成一个XSLT2.0 的文件,然后通过xalan的
开源项目进行转换。把一个XML转成为另一个XML。但是在转换的过程中遇到了麻烦。
XSLT文件
<xsl:variable name="values" as="xs:integer*">
<xsl:sequence select="(1,2,3,4)"/>
<xsl:sequence select="(8,9,10)"/>
</xsl:variable>
<xsl:value-of select="sum($values)"/>
JAVA 文件
public class CustomerToBookList {
public static void main(String[] args) throws TransformerException,
TransformerConfigurationException, FileNotFoundException,
IOException {
// Use the static TransformerFactory.newInstance() method to instantiate
// a TransformerFactory. The javax.xml.transform.TransformerFactory
// system property setting determines the actual class to instantiate --
// org.apache.xalan.transformer.TransformerImpl.
TransformerFactory tFactory = TransformerFactory.newInstance();
// Customer Transformer
Transformer transformer = tFactory.newTransformer(new StreamSource("cnnTest/xalan2/CustomerToBookList2.xsl"));
// Use the Transformer to apply the associated Templates object to an
// XML document
// 这里已经和xml没有关系了,我已经不用这个xml了,只是为了让项目能运行,所以用了一个简单的Xslt文件。
transformer.transform(new StreamSource("Customers.xml"),
new StreamResult(new FileOutputStream("BookList2.XML")));
System.out
.println("************* The result is in birds.out *************");
}
}
然后就是
异常
无法将 #RTREEFRAG 转换成 NodeList!
请问大家这是怎么回事,是我的那里使用错了?