在当前形式中,Netbeans只支持XSLT1.0,不支持XSLT2.0。
我们如何在Netbeans 7中使用XSLT2.0?
如何使Saxon成为JRE安装的默认XSLT处理器:
(因此,不仅对于Netbeans,其他Java应用程序也可能受到影响。)
- 获取Saxon for Java(有不同的版本,请选择适合您的版本),并将saxonXYZ.jar复制到jre/lib/ext目录中
-
在jre/lib目录中创建一个jaxp.properties文件,其中包含以下内容:
javax.xml.transform.TransformerFactory=net.sf.saxon.TransformerCFactoryImpl
-
(重新启动Netbeans。)通过执行XSL转换来检查是否成功:如果使用了Saxon,XSLT处理器输出将包含"正在使用net.sf.Saxon.Controller XSLT Processor from file…"
[使用NetBeans 7.3.1/Saxon HE 9.4.0/JRE 1.7.0_17]进行测试]
还有其他方法可以配置Java应用程序中使用的"TransformerFactory"。请参阅JAXP常见问题解答。当然,除了Saxon之外,还有其他XSLT处理器可以插入Java API for XML Processing(JAXP)。