使用 Saxon-HE 9.6 从 XSLT 调用实例方法
Calling instance method from XSLT using Saxon-HE 9.6
我们有一个用例,我们必须从 Xlst 模板调用实例方法。我们使用的是 Saxon-HE 9.6 版本。通过这个 。我们尝试使用 Java 对象作为参数 psssing XML 转换器,然后更新模板以调用该实例方法。但它给出了 javax.xml.transform.TransformerConfigurationException.
如果我们可以使用 Saxon HE 从 XSLT 模板调用实例方法,有人可以帮忙吗?
Java 对象:
public Double getValue(String s1, String s2, Double d1) {
// perform some operation and call other service to fetch data.
Double response = 2.0;
return response;
}
Xlst 模板:
添加:
xmlns:util="java:com.test.utils.TestUtils"
<!--<xsl:value-of select="util:getValue($utils, $country1, $country2, $value)"/>
将此实用程序对象传递给 xlst 的代码
Transformer transformer = factory.newTransformer(xsltTemplate);
transformer.setParameter("utils", util);
不,此功能在 Saxon-HE 中不可用。还有其他选择:请参阅 www.saxonica.com.
文档中的“可扩展性”部分
另请注意,9.6 是一个相当旧的版本。由于 Saxon 在开发时跟踪了 XSLT 2.0 和 3.0 规范草案,因此最好避免使用旧版本的产品,因为产品发布时规范在不断变化。
我们有一个用例,我们必须从 Xlst 模板调用实例方法。我们使用的是 Saxon-HE 9.6 版本。通过这个
如果我们可以使用 Saxon HE 从 XSLT 模板调用实例方法,有人可以帮忙吗?
Java 对象:
public Double getValue(String s1, String s2, Double d1) {
// perform some operation and call other service to fetch data.
Double response = 2.0;
return response;
}
Xlst 模板: 添加:
xmlns:util="java:com.test.utils.TestUtils"
<!--<xsl:value-of select="util:getValue($utils, $country1, $country2, $value)"/>
将此实用程序对象传递给 xlst 的代码
Transformer transformer = factory.newTransformer(xsltTemplate);
transformer.setParameter("utils", util);
不,此功能在 Saxon-HE 中不可用。还有其他选择:请参阅 www.saxonica.com.
文档中的“可扩展性”部分另请注意,9.6 是一个相当旧的版本。由于 Saxon 在开发时跟踪了 XSLT 2.0 和 3.0 规范草案,因此最好避免使用旧版本的产品,因为产品发布时规范在不断变化。