4

Java 7 Update 25以来,Applet 的方法getCodeBase()似乎返回NULL了本地小程序。我在Java 7u25发行说明中没有找到任何可以宣布/解释此更改的内容,但我发现了一个电子邮件讨论,声称该更改实际上是有意的。

谁能帮我找到一个资源/文档,我可以在其中了解有关此更改的更多信息?

4

3 回答 3

2

更新(2014 年 1 月 21 日):Java 7 更新 51 似乎已修复此 Java 错误

Oracle 声称该修复程序与“安全”相关,并且需要防止沙盒小程序获得对“文件路径”信息(正在运行小程序的文件夹名称)的访问权限。但是甲骨文失败了,正如这里详细解释的那样:

http://www.duckware.com/tech/java-security-clusterfuck.html

谷歌“java 错误报告”并向 Oracle 提交错误报告。

于 2013-09-01T18:46:22.190 回答
2

发行说明在这里:

http://www.oracle.com/technetwork/java/javase/7u25-relnotes-1955741.html

它在那里。

“本地小程序为”返回 NULL

于 2013-06-27T19:15:39.383 回答
0

Oracle 错误 #8017250(显然也与无法使用 JDK 7u21 和 7u25 调试小程序有关)有更多细节。特别是,它指出这“不是问题”(即故意的)并建议以下替代方案:

如果小程序需要加载资源:

  • 如果资源在 applet JAR(s) 中,他们应该能够ClassLoader.getResoruceAsStream直接加载它,而不需要代码库信息。
  • 如果资源在任意位置,而不是在 applet JAR 中,他们应该有其他方法可以到达该位置,因为它不是 applet 资源的一部分。(例如 user.homejava 系统属性,前提是他们的小程序拥有所有权限)
于 2013-09-02T10:43:13.113 回答