class“com.mysql.jdbc.LocalizedErrorMessages”与同一包中其他类的信任级别不匹配

时间:2012-06-03 09:04:20

标签: java security jdbc applet digital-signature

我有一个签名的applet,它使用JDBC / Mysql驱动程序访问localhost中的数据库。

一切正常但用户每次都会收到一个恼人的警告对话框,提示该应用程序包含已签名和未签名的代码。

我进入了Java控制面板,高级选项卡并选中了启用跟踪,启用日志记录和显示applet生命周期异常,并在Java控制台中按了5以显示所有日志。

然后我发现了以下错误:

class "com.mysql.jdbc.LocalizedErrorMessages" does not match trust level of 
    other classes in the same package

在我的清单文件中,我可以看到LocalizedErrorMessages.properties已经签名(清单中没有LocalizedErrorMessages.class也没有签名)

Name: com/mysql/jdbc/LocalizedErrorMessages.properties
SHA1-Digest: R1EZP+ilj5TImxZLeilYeyh3VBc=

1 个答案:

答案 0 :(得分:3)

当包被签名两次(这是它出现的主要原因)时,会发生此错误。解决这个问题的最简单方法是删除所有签名并对代码签名。

  

..警告对话框,表示应用程序包含有符号和无符号代码。

有关背景信息,请参阅Mixing Signed and Unsigned Code修复。