所以我们安装了Java 7u21版本,该版本应该会加强applet的安全性.不幸的是,它收紧了很多,以至于我们的applet不再运行了.不好.
有趣的是,它只在我们使用JWS操作时才停止工作.如果我们从标准网页将其作为标准小程序启动,一切正常.
在JWS模式中,我们至少会在反射和问题上遇到安全问题java.lang.Thread.setDefaultUncaughtExceptionHandler.
证书看起来不错.
来自Oracle的发行说明没有提供与JWS相关的任何内容的大量输入.
因此,我对社区的问题是:有没有人有想法或(甚至更好)解决这个问题?
与给定建议/评论相关的其他信息:
这个小程序由全球数百个第三方客户运行,因此不幸的是,更改安全策略是不可取的.该问题对于客户来说是可重现的.但我可以确认更改策略文件可以解决问题.
当我从Eclipse启动的Tomcat运行applet时(因此当然没有签名的applet),它会按预期在浏览器中显示警告通知.作为一个容易上当的人,我允许applet运行,因为它是从我自己的开发环境启动的.这仍然会导致安全性失败.
我已经考虑过,如果这是Java中的错误,但我想看看是否有其他人看到同样的问题.我想我们都知道修复bug的Oracle周转时间并不总是最好的......
感谢您的任何意见.
非常感谢Tony,你的建议让我能够在7u21中创建applet,正确地说; 我认为这是一个向前的步骤,我正在通过浏览器签署和唤醒许多小程序,这些超过7u21.我今天早些时候不想这样做.但是我被困了几个小时,事实上我还没有从我的遗留应用程序中唤醒我的第一个第三方小程序(即在JVM 1.6或更老版本中工作正常).
涉及的applet,我签了他们,但我总是得到错误:SecurityException - "Bad applet class name".我有一些小程序,并且html代码调用它们,问题是我的第一个小程序链(在调用链中没有任何其他)可能不像其他签名小程序正在做的那样(这些小程序来自java网站进行培训) ),这个第3方applet简单不运行并抛出上面提到的异常.我的第三部分applet我不知道它在内部做了什么.对不起,如果没有源代码,我可能会要求提供一个不容易解决的特殊情况,但是,无论如何,请相信告诉我任何想法.
最好的祝福