Я получаю эту ошибку во время выполнения, когда пытаюсь запустить мое приложение GWT:
java.security.AccessControlException: access denied (java.io.FilePermission C:\Users\Admin\AppData\Local\Temp\tmp-andami read)
at java.security.AccessControlContext.checkPermission(Unknown Source)
at java.security.AccessController.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkPermission(Unknown Source)
(трассировка стека длиннее, но я думаю, этого достаточно, чтобы сфокусировать источник проблемы)
Я искал в Google эту проблему, и я нашел в общих чертах изменение разрешений для файла java.policy (находится в C: \ Program Files \ Java \ jre6 \ lib\ security), поэтому я сделал что-то вроде:
permission java.io.FilePermission "<<ALL FILES>>" , "read";
permission java.io.FilePermission "C:\Users\Admin\AppData\Local\Temp\tmp-andami" , "read";
permission java.security.AllPermission;
Проблема в том, что в этом PATH-файле или папке "tmp-andami" не существует (возможно, он скрыт), поэтому я не знаю, если этоэто проблема разрешения или проблема в том, что эти файлы не существуют и, следовательно, не могут быть прочитаны.
Все это происходит из строки, написанной в моем коде:
private static final String tempDirectoryPath =
System.getProperty("java.io.tmpdir")+"/tmp-andami";
НоМне нужно написать этот файл, здесь или в другом PATH, мне все равно.Я пытался записать файл в «C: /», но получил тот же результат.
Есть идеи по этому поводу?Я что-то не так делаю?
Большое спасибо!
Но я использую доступ к моей файловой системе со стороны "серверного" пакета, а не "клиента", который содержитпереводимый код.
Я думал, что это можно будет сделать.
Итак, что я могу сделать?Должен существовать способ доступа к локальной файловой системе, не так ли?Или, по крайней мере, альтернативный способ сделать то же самое.
А как насчет размещения этого файла в локальной файловой системе развернутого приложения?Я имею в виду под каталогом "война" или что-то в этом роде.Если браузер может получить доступ к этой папке для чтения .jars и т. Д., Можно ли будет сделать то же самое, но с другой целью?
Спасибо за помощь!