【发布时间】:2012-08-23 16:12:49
【问题描述】:
我遇到了“找不到类 'pkg.XSLTFunctions”。 JRE 7 上的错误导致使用 Xalan 编译 XSL 失败。这在 JRE 6 中完美运行。以下是我的应用程序的一些细节。
该应用程序是一个 Win32 本机 EXE,它使用 JNI 加载 JVM,向系统类加载器添加一个 JAR,并使用 JNI 在该 JAR 中运行一个类。 Java 类然后从 JAR 中取出一个 XSL 并尝试编译它。
JAR 还包含一个作为 Xalan Java 扩展的 Java 类,并在 XSL 中指定(如下所示)。
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xalan="http://xml.apache.org/xalan"
xmlns:util="xalan://testSoe.XSLTFunctions"
exclude-result-prefixes="p util xalan">
但是,Xalan 找不到这个回调类,XSL 的编译失败。它出错了
ExecGroup-0:err:ERROR: 'Cannot find class 'testSoe.XSLTFunctions'.'
这在 JRE 6 上有效,而这个问题只在 JRE 7 上出现。关于 JRE 6 和 7 之间可能导致这种行为的不同之处的任何指针?
谢谢, 兰吉特
【问题讨论】: