私はデジタル署名されたJavaアプレットを持っています。
xmlファイルをユーザーフォルダーに書き込むjavascriptから関数を呼び出せるようにする必要があります。
アプレットのinit関数に、サブフォルダーを作成し、ファイルを作成して、そのファイルに追加するコードがあります。これはエラーなしで実行されます。同じコードがjavascriptから直接呼び出される関数(下記)内にある場合、アクセス制御例外がスローされます。
public boolean createLocalXMLFile(String XML) {
String path = BaseDirectory.baseDirectory + "\\TestFolder";
try {
boolean status;
status = new File(path).mkdir();
UUID fName = UUID.randomUUID();
FileWriter fstream = new FileWriter(path + "\\"+fName+".xml");
BufferedWriter out = new BufferedWriter(fstream);
out.write(XML);
//Close the output stream
out.close();
return true;
}catch (Exception ex) {
System.out.println("createXMLError \n"+ex.toString());
return false;
}
}
*ベースディレクトリはユーザーのホームパスを参照していることに注意してください
Javaコンソールエラーjava.security.AccessControlException:アクセスが拒否されました(java.io.FilePermission C:\ Users \ Richard \ Hytec \ AppStore \ 0d927ab7-74ba-449a-9db4-98e62cd0f53b.txt write)