java.io.FilePermission — доступ запрещен

#java

#java

Вопрос:

Исключение в потоке «AWT-EventQueue-1» java.security.Исключение AccessControlException: отказано в доступе (запись java.io.FilePermission)

я получаю вышеуказанную ошибку, когда я пытался записать в файл.

что мне нужно сделать, пожалуйста, помогите…

я запускаю приложение-апплет…

Комментарии:

1. Вы пробовали подписать свой апплет?

2. Опубликуйте соответствующий код (и, возможно, примите некоторые ответы?)

Ответ №1:

Апплетам по умолчанию запрещен доступ к файловому вводу-выводу клиента. Вам необходимо подписать свой апплет или отредактировать файлы политики.

Ответ №2:

Насколько я знаю, апплеты не могут выполнять запись в файлы, поскольку это было бы нарушением безопасности. Вы можете явно предоставить JVM разрешение на запись файлов, чтобы включить это, но я думаю, что это было бы действительно плохой идеей, потому что ваши пользователи позволили бы вам записывать все, что вы хотите, на их диск через Интернет. Почему ваш апплет хочет выполнить запись в файл?

Ответ №3:

Подписан ли ваш апплет? Неподписанные апплеты не могут получить доступ к файлам. Смотрите здесь: http://java.sun.com/developer/onlineTraining/Programming/JDCBook/signed.html

Ответ №4:

Сделайте вот так:

  fos=AccessController.doPrivileged(new PrivilegedAction()
    public  FileOutputStream run() {
      return new FileOutputStream(f1);
    }
  });
  

или отредактируйте файл « java.policy «, добавив
разрешение java.io.FilePermission "<<ALL FILES>>", "read,write" ;