如何在xslt文件中调用外部java函数? [英] how to call external java function in xslt file?

查看:37
本文介绍了如何在xslt文件中调用外部java函数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有这个 xslt 文件,我需要调用它来调用同一应用程序中其他位置的 java 函数.在 xslt 文件中,我有

I have this xslt file that I need to call a java function placed somewhere else in the same application. In the xslt file I have

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
                xmlns:java="java" 
                xmlns:test_my="vobs.plugins.WikiParser.WikiParser"
                version="2.0">
  <xsl:output indent="yes" method="html"/>
  <xsl:template match="/">
    <H1>
      <xsl:value-of select="WikiDescription/Title"/>
    </H1>
    Summary: <xsl:value-of select="WikiDescription/Description"/>
    <xsl:variable name="text">                      
      <xsl:value-of select="WikiDescription/Text"/>
    </xsl:variable>
    <p>
      <xsl:value-of select="test_my:parse2($text)" 
                    disable-output-escaping="yes"/>
    </p>

但是当我尝试执行此 xlst 文件时出现以下错误

but when I try to excute this xlst file I got the following error

XSL transform reported error: 
XPath syntax error at char 21 on line -1 in {test_my:parse2($text)}: 
Cannot find a matching 1-argument function named 
{vobs.plugins.WikiParser.WikiParser}parse2()

似乎找不到java类,那么正确的方法是什么?一些代码示例会更好.提前致谢!

it seems like that it couldn't find the java class, so what's the right way to do this? some code example will be even better. Thanks in advance!

推荐答案

这取决于您使用的 XSLT 转换处理器.Saxon 使用 urn:java:;Xalan 使用 xalan://.

It depends on what XSLT transformation processor you are using. Saxon uses urn:java:; Xalan uses xalan://.

这篇关于如何在xslt文件中调用外部java函数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆