我在写了个applet程序,该applet有和js交互的,简单来讲就是,applet中写一个方法(用来创建文件的,下面有代码),然后使用js方法去调applet的这个方法(我在applet的object设定scriptable为true)。打包java文件后使用了keytool对jar文件做了签名。
但是还是报下面的异常。
Ignored exception: java.security.AccessControlException: access denied (java.io.FilePermission D:\Software\online\13.jpg read)
Ignored exception: java.lang.Exception: java.security.AccessControlException: access denied (java.io.FilePermission D:\Software\online\13.jpg read)
那个applet的方法如下:
public void writeFile() {
String fileName = targetDir + ONLINECHECKDIR + "/" +  certNo + ".jpg";
File targetFile = new File(fileName);
if(!targetFile.exists()) {
try {
targetFile.createNewFile();
} catch (IOException e) {
System.out.print("createNewFile exception :");
System.out.println(e.getMessage());
}
}

}
后来反复折腾都没有用,
最后,我发现把这个方法放在applet的 Init方法中,就可以创建文件成功,不会报异常。
为什么使用js去调用就会报异常呢?
如果使用js去调用我又该怎么处理呢?希望做过applet的帮忙下
谢谢!