如何从xsl:apply-templates调用XSLT中的外部Java函数

让·弗朗索瓦·萨瓦德

显然,不可能直接从xsl:apply-templates调用外部函数。我有一个包含html标签的XML节点,例如:

<text>
    <ul>
        <li>
            blablablaba
        </li>
    </ul>
<text>  

在我的输出中,如果要应用html标记,则需要使用xsl:apply-templates select =“ text” />。我不能使用xsl:value-of,因为它不会考虑HTML。现在的问题是,我需要调用一个将转换html标签的函数,这样我的代码将是:

<xsl:apply-templates select="util:myFunction(text)"/>

但是,这将导致错误,还有另一种方法可以执行此操作吗?

提前致谢。

CM Sperberg-McQueen

我想您想说的是:在XSLT需要一个评估为一组节点的XPath表达式的情况下,似乎无法对返回字符串的Java函数使用函数调用。

是的,那是不可能的。

如果要使用调用util:myFunction(text)来选择应向其应用模板的节点,则将需要该函数使用XSLT处理器使用的任何树表示形式返回一组节点。

对于完全支持用户提供的Java功能的XSLT处理器,几乎可以肯定地做到这一点。几乎肯定不是选择要处理的输入节点的最佳解决方案。很难想象Java中比XSLT更容易的节点选择过程。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从python中的类调用外部函数

如何在angular 5中调用外部javascript函数?

如何在angular中调用外部jQuery函数

如何防止React.js中的外部函数调用

如何从外部调用的Python函数在Qlabel中显示消息

如何在外部类中调用内部类的函数?

xsl:apply-templates如何正常工作,为什么将名称写2次?

如何在jQuery中的函数外部调用clearInterval?在setInterval之外

在Jade中,如何在外部Javascript中调用函数

XSLT:如何编写一个<xsl:apply-templates />以匹配具有模式和不具有模式的模板的节点,而又不影响顺序?

如何在C ++中调用外部函数?

如何从xsl:function调用中输出CDATA?

<xsl:apply-templates>不适用于<xsl:attribute>之后的子代

了解带有xsl:apply-templates的xsl:copy(XSLT 2.0)

如何在xsl:apply-templates中使用从Java设置的参数?

如何从外部JS文件调用React JS中的函数

如何在多个条件下调用xsl:apply-templates

如何访问从 JavaScript 中对象外部的函数内部调用的数组

<xsl:apply-templates select=".//text"/> 在 xsl 文件中是什么意思

xsl:template / xsl:apply-templates 删除子节点

如何在另一个模板中使用 <Xsl: apply-templates match="othertemplate"> <xsl:template match="sometemplate">

使用 xsl:apply-templates 在特定结构中循环

如何从 HTML 调用外部脚本文件中的函数

如何从 JS 模块类中调用外部作用域函数

如何使用typescrpt调用外部js文件中的函数

如何在 xsl:apply-templates 中使用变量作为值?

如何使用 onclick 在 html 中调用外部 javascript 函数

<xsl:sort> 不能与 <xsl:apply-templates> 一起以表格形式显示数据

如何使用 Twilio 函数中的参数调用外部 API