2
我的小应用程序不能执行以下语句:java.lang.RuntimePermission accessClassInPackage.sun.security.pkcs11.wrapper?
Method p11Getinstance = PKCS11.class.getMethod("getInstance", String.class,
String.class, CK_C_INITIALIZE_ARGS.class, Boolean.TYPE);
,并抛出一个异常:
java.security.AccessControlException:访问被拒绝(java.lang.RuntimePermission accessClassInPackage.sun.security.pkcs11.wrapper )
如果我在javahome中编辑java.policy
,上面的异常就会消失,但我不想这样。我想编辑我的代码。
当我尝试添加一些语句:
AccessController.doPrivileged(new PrivilegedAction() {
@Override
public Object run() {
try {
p11Getinstance = PKCS11.class.getMethod("getInstance", String.class, String.class, CK_C_INITIALIZE_ARGS.class, Boolean.TYPE);
} catch (Exception e) {
}
return null;
}
});
然后用我的证书对Applet签名的jar文件,将这个异常仍然会出现?
-1,因为这个问题显然已经知道这是一个可能的解决办法:“如果我在JAVAHOME编辑java.policy中,上述异常会消失,但我不想这样。“如果你知道这个修复只是一个可能的修复方法,请告诉它。 –