我有以下 XSL,它为我的 Java 类定义了一个命名空间。简而言之,我试图根据我的 XML 文件中的值指向不同的资源包(我知道资源包确实是为了国际化,但为什么要重新创建轮子?):
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="http://www.w3.org/1999/XSL/Format"
xmlns:java="http://xml.apache.org/xalan/java"
xmlns:pf="my.package.common.PropertiesFinder">
<xsl:variable name="compType" select="//comp_type"/>
<xsl:variable name="props" select="pf:getPropsFile($compType)"/>
<xsl:variable name="DEF6Resources" select="java:util.ResourceBundle.getBundle($props)"/>
转换运行时出现以下错误:
java.lang.NoSuchMethodException:对于扩展函数,找不到方法 org.apache.xml.utils.NodeVector.getProps([ExpressionContext,])
任何人都可以解释为什么会这样。这显然与我的类路径/加载器有关,但我不确定该怎么做......
提前谢谢了。
安娜