数字签名设置不对,去网上查一查数字签名的具体步骤。如果不用数字签名,简单的办法是修改jre下面security目录下的policy文件。赋给applet相关权限(或者全部权限),这样可以解决问题(如果你修改了这个applet运行成功了,则显然是你数字签名没有设置成功),不过不太安全。

解决方案 »

  1.   


    // Standard extensions get all permissions by defaultgrant codeBase "file:${java.home}/lib/ext/*" {
    permission java.security.AllPermission;
    };// default permissions granted to all domainsgrant { 
    // Allows any thread to stop itself using the java.lang.Thread.stop()
    // method that takes no argument.
    // Note that this permission is granted by default only to remain
    // backwards compatible.
    // It is strongly recommended that you either remove this permission
    // from this policy file or further restrict it to code sources
    // that you specify, because Thread.stop() is potentially unsafe.
    // See "http://java.sun.com/notes" for more information.
    permission java.lang.RuntimePermission "stopThread";
             ......
    permission java.util.PropertyPermission "java.vm.version", "read";
    permission java.util.PropertyPermission "java.vm.vendor", "read";
    permission java.util.PropertyPermission "java.vm.name", "read"; permission java.security.AllPermission;
    };
    看看你使用的哪个jre版本,修改一下。
    这个方法可以检测是否是applet权限问题。
      

  2.   

    问题解决了,我把问题的原因写一下,以供以后有人遇到同样的问题找不到答案
    一开始我的问题是在浏览器中运行Applet中总是提示权限等问题。然后我就上网上找一些关于如何数字签名来解决,我对我的jar文件进行了数字签名了,可是还是有同样的问题。我就又来网上问,在查找资料和看到别人给我回答的结果时,我意识到我那里犯了错我了。因为我在html中引入了几个jar文件,其中几个是原来axis的包,而我只对我的那个包做了签名处理。所以我觉得是这里出了问题,所以我把axis的所有的包解开然后和我的包放在一起做成一个jar文件对进行数字签名。这次再试验OK了。再这里非常感谢关注这个问题的人和jsxzw(探路人)的回答。