Applet调试问题 - 删除证书时不显示applet安全警告

时间:2011-03-21 10:31:57

标签: java security debugging netbeans applet

我们有一个签名的java applet,它是通过javascript从aspx调用的(我们不是一个真正的Java开发商店,主要是C#开发者)。

我需要通过这个小程序进行调试,但是我的同事机器上没有看到这个问题。

要将netbeans调试器附加到applet,我们传统上通过Java Control面板从“Trusted Certificates”存储中删除所有证书,删除所有缓存的applet(通过Java控制面板),然后在下载applet时删除运行,我们看到安全警告。此时我们可以附加netbeans调试器,好吧安全警告(检查'always trust'复选框)然后在applet代码中点击断点,从那里进行调试。

然而,无论我做什么,我都没有看到安全警告,这使得连接到applet有点困难。我已经删除了我们的证书,删除了任何缓存的applet,我甚至“抓住了稻草”并删除并重新安装了JDK(我们使用1.6更新7,更新10和更新20;我们知道的所有更新都与我们的实现一起工作)。我只是无法获得安全警告。

就像我永远打开了“永远信任”标志一样。

感激地收到任何想法。

3 个答案:

答案 0 :(得分:0)

您可以尝试使用(非嵌入式)Java Web Start启动小程序。使用JWS启动您将失去JS功能,但应该重新获得对权限的轻松控制。

答案 1 :(得分:0)

仅在小程序签名时才会出现安全警告。否则applet没有任何权限,因此不需要显示警告。

您可以使用新的(不受信任的,自签名的)密钥对您的applet进行签名,这可能会有所帮助。

答案 2 :(得分:0)

很抱歉,不能直接回答您的问题,但如果您想要在启动时暂停JVM以进行调试,则可以在JVM选项中使用suspend = n选项,如:

-Djava.compiler=NONE -Xnoagent -Xdebug -Xrunjdwp:transport=dt_socket,address=2502,server=y,suspend=n

这样,JVM会自动挂起,等待调试器的连接。