Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将字符串数组作为参数从xslt发送到Java?_Java_Xml_Xslt - Fatal编程技术网

如何将字符串数组作为参数从xslt发送到Java?

如何将字符串数组作为参数从xslt发送到Java?,java,xml,xslt,Java,Xml,Xslt,我正在从xslt调用一个java函数,它有一个字符串数组作为参数。我尝试使用以下命令将字符串转换为数组: <xsl:variable name="strArr"> <item>abc@tdm.com</item> <item>xyz@tdm.com</item> </xsl:variable> 我得到这个错误: 找不到方法com.techm.ump.applicationServices.Email.postMail[Ex

我正在从xslt调用一个java函数,它有一个字符串数组作为参数。我尝试使用以下命令将字符串转换为数组:

<xsl:variable name="strArr">
<item>abc@tdm.com</item>
<item>xyz@tdm.com</item>
</xsl:variable>
我得到这个错误:

找不到方法com.techm.ump.applicationServices.Email.postMail[ExpressionContext,]节点集,节点集,字符串,字符串


请告诉我是否有办法在xslt中将字符串转换为字符串数组。

xslt 1.0知道数据类型字符串、数字、布尔值、节点集和结果树片段。XSLT中没有数组。XSLT数据类型如何映射到Java数据类型主要取决于特定XSLT处理器的实现。因此,您需要找出您使用的XSLT处理器,并查看有关扩展函数的类型和类型映射的文档,然后您应该知道在Java中可以使用哪些类型作为扩展函数的参数类型,以及XSLT类型(如节点集)是如何映射的。感谢您提供的信息。我正在使用XSL2.0。我已经更改了我的java类,该类将接受带有逗号分隔符的字符串并转换为字符串数组。您确定要使用XSLT 2.0处理器吗?RTREEFRAG的出现(可能意味着结果树片段)表明它是一个XSLT1.0处理器。但即使XSLT2.0不知道任何字符串数组,它也将节点序列和/或基元值作为其数据类型。当然,对于XSLT2.0,它还取决于XSLT处理器的API如何将XSLT数据类型映射到Java类和类型。我用的是1.0处理器。如果您能推荐一些网站来帮助我学习XSLT的基础知识,那将非常有帮助,因为我是XSLT新手。
document('')/*/xsl:variable[@name='FMail']/*