我一直在尝试国际化一些XSLT和得到它的使用属性文件。 我得到的地方,我觉得我有一些代码应该工作,但我得到的是我发现这里的原因的错误点: Java/XSLT: Cannot find a matching 1-argument function是“Java的:类的标准使用XSL的命名空间?
我,因为它说,使用撒克逊(版本8),并试图确定是否使用如下代码: xmlns:lcl="java:com.mycode.localisation.LocaleUtilities" xmlns:resource="java:java.util.ResourceBundle.getBundle('taskStrings', lcl:getCurrentLocale())"> ...
是“标准”XSL的一部分,或者仅由某些解析器支持的非官方/专有扩展。我需要知道这一点,因为我需要提供所使用的解析器一定程度的灵活性,而只能证明不支持撒克逊如果不支持这一点,因为它是不完全符合标准。
它引起的错误是这样的方式
Cannot find a matching 1-argument function named
{java:java.util.ResourceBundle.getBundle('taskStrings', lcl:getCurrentLocale())}getString()
进一步深挖表明撒克逊不支持我想要什么,以及存在的问题进行了使用实例方法,这会导致并发症出现。我现在重新使用静态方法调用来完成所有任务,以保持简单并且一切正常。 – user1111284 2011-12-22 15:35:09
正如您所建议的那样,java:x.y.z URI格式不是一种标准,而是由几个基于Java的XSLT处理器用于定义与Java方法绑定的约定。从一个处理器到另一个处理器的详细规则差别很大 – 2011-12-22 17:56:03
如果您在这里找到解决方案,您可以为自己的问题添加答案。 – 2012-03-15 21:27:27