在XSLT2中调用Java函数
我有Java方法在XSLT2中调用Java函数,java,xml,xslt,xslt-2.0,Java,Xml,Xslt,Xslt 2.0,我有Java方法 public static Object parseXMLtoXLSX(File xmlFile, String path) 所以我想从XSLT调用这个方法 我理解,我必须在XSLT文件中引入类,例如: <xsl:stylesheet version="2.0" xmlns:trans="pathToMyJavaClass"> 但是我如何调用该方法呢 这条路对吗 <xsl:value-of select="trans:parseXMLtoXLSX($x
public static Object parseXMLtoXLSX(File xmlFile, String path)
所以我想从XSLT调用这个方法
我理解,我必须在XSLT文件中引入类,例如:
<xsl:stylesheet version="2.0" xmlns:trans="pathToMyJavaClass">
但是我如何调用该方法呢
这条路对吗
<xsl:value-of select="trans:parseXMLtoXLSX($xmlFIle,$path)" />
但是如何将从该方法返回的Java文件对象存储在变量中呢
编辑:在这个问题中,我无法显示…从XSLT到其他语言的调用约定完全取决于您使用的XSLT处理器,因此您需要提供这些信息 如果您在Java下使用XSLT2.0,那么您使用的处理器很可能是Saxon,在这种情况下,调用约定记录在
在处理XSLT使用的XDM数据模型中没有等效对象的对象(如Java.util.File)的情况下,调用约定可能相当复杂。如果你把事情组织起来,只需要传递简单的值,比如字符串和整数,那就简单多了。例如,用Java编写另一个方法,该方法接受字符串(包含文件名)而不是文件。研究所用XSLT处理器的文档,例如Saxon 9.8,请参阅。如果使用不同的处理器,约定可能会不同。