已签名的applet会抛出安全警告,但如果单击则会运行yes按钮

时间:2010-09-09 15:31:51

标签: java security applet mixed-code

我有一个签名的applet,可以从xml文件构建菜单。当它加载时,我得到有关签名和未签名代码的java安全警告。 applet使用jdom.jar

如果我在安全警告对话框中单击是以阻止未签名的代码,则无关紧要,或者如果我单击否,则applet将按预期启动并运行。

我发现调用SAXParserFactory.newInstance()的jdom中的一行代码是安全警告的原因。我曾尝试签约jdom.jar,但这没有帮助。

如何在不更改Java控制台中的任何设置的情况下摆脱安全警告?

提前致谢。

3 个答案:

答案 0 :(得分:0)

如果您使用任何功能列表(如本地文件访问或自定义类加载器),则需要对整个applet进行签名。工厂可能使用自定义类加载器。在没有警告的情况下,浏览器可能不接受自签名证书。

http://download.oracle.com/javase/1.4.2/docs/guide/plugin/developer_guide/rsa_signing.html

答案 1 :(得分:0)

签署JAXP jar(或包含SAXParserFactory的jar)

答案 2 :(得分:0)

由于applet似乎在没有不受信任的代码的情况下工作,你能删除吗?不受信任的代码似乎是备用JAXP XML解析器实现。希望基于Xerces的JRE(自1.4,IIRC)以来,不应该太糟糕。

(顺便说一句:我强烈建议您将Trusted-Only: true添加到已签名文件的清单中,Sealed: true通常不是一个坏主意。