gpt4 book ai didi

Java 7u4 webstart 安全异常 : Class does not match trust level

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:12:19 26 4
gpt4 key购买 nike

我们开始注意到,对于 Java 7(尤其是更新 4),我们所有的用户都开始通过我们的 Webstart 应用程序看到这一点:

[14:42:58,422] AWT-EventQueue-0(DEBUG) java.lang.SecurityException: class "CLASSNAME" does not match trust level of other classes in the same package
[14:42:58,422] AWT-EventQueue-0(DEBUG) at com.sun.deploy.security.CPCallbackHandler$ChildElement.checkResource(Unknown Source)
[14:42:58,422] AWT-EventQueue-0(DEBUG) at com.sun.deploy.security.DeployURLClassPath$JarLoader.checkResource(Unknown Source)
[14:42:58,422] AWT-EventQueue-0(DEBUG) at com.sun.deploy.security.DeployURLClassPath$JarLoader.getResource(Unknown Source)
[14:42:58,422] AWT-EventQueue-0(DEBUG) at com.sun.deploy.security.DeployURLClassPath.getResource(Unknown Source)
[14:42:58,422] AWT-EventQueue-0(DEBUG) at java.net.URLClassLoader$1.run(Unknown Source)
[14:42:58,422] AWT-EventQueue-0(DEBUG) at java.net.URLClassLoader$1.run(Unknown Source)
[14:42:58,422] AWT-EventQueue-0(DEBUG) at java.security.AccessController.doPrivileged(Native Method)
[14:42:58,422] AWT-EventQueue-0(DEBUG) at java.net.URLClassLoader.findClass(Unknown Source)
[14:42:58,422] AWT-EventQueue-0(DEBUG) at com.sun.jnlp.JNLPClassLoader.findClass(Unknown Source)
[14:42:58,422] AWT-EventQueue-0(DEBUG) at java.lang.ClassLoader.loadClass(Unknown Source)
[14:42:58,422] AWT-EventQueue-0(DEBUG) at java.lang.ClassLoader.loadClass(Unknown Source)...More

其中 CLASSNAME = 几乎每个类在应用程序执行中从几个 jar 中随机点,打破了几个行为。如果我们的用户使用 Java 6,他们没有问题!只有 7(更新 4)。我们对所有 jar 进行签名,包括主应用程序 jar 和它的库 jar。即启动我们的 webstart 应用程序的用户看到蓝色盾牌而不是黄色或红色。

这显然是一个问题,因为用户现在更频繁地升级到 Java 7。我试图通过使用以前的安装(有效)或安装新的安装来强制我们的应用程序在用户计算机上使用 Java 6....在资源周围使用 j2se version="1.6"标记,但这会导致它自己可能最好将其纳入自己的线程(自动 jre 安装部分)的问题。

Oracle 是否通过 Java 7u4 破坏了 Webstart 安全性?我该如何解决这个安全异常问题?

最佳答案

我在 1.7.07 中遇到了同样的问题:我的 webstart 应用程序在加载类时随机失败并出现相同的错误消息。我在此页面上找到了一个有趣的解决方法 oracle forums .最后一个答案描述了该问题的解决方法 (Java 6) - 对 jar 签名的引用被保留为软引用,这些可能被垃圾收集,这会导致错误消息。这可以通过一些额外的行用于 Java 7

// Java 1.7
callNoArgMethod("getSigningData", jar);
makeHardLink("signingDataRef", jar);

关于Java 7u4 webstart 安全异常 : Class does not match trust level,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10905790/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com