显然,不可能直接从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)"/>
但是,这将导致错误,还有另一种方法可以执行此操作吗?
提前致谢。
我想您想说的是:在XSLT需要一个评估为一组节点的XPath表达式的情况下,似乎无法对返回字符串的Java函数使用函数调用。
是的,那是不可能的。
如果要使用调用util:myFunction(text)
来选择应向其应用模板的节点,则将需要该函数使用XSLT处理器使用的任何树表示形式返回一组节点。
对于完全支持用户提供的Java功能的XSLT处理器,几乎可以肯定地做到这一点。几乎肯定不是选择要处理的输入节点的最佳解决方案。很难想象Java中比XSLT更容易的节点选择过程。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句