Разрешения на чтение Java-файлов - PullRequest
0 голосов
/ 04 ноября 2011

Мне было интересно, сможет ли кто-нибудь показать мне способ создания разрешений на чтение файлов для моего Java-апплета.

Точное исключение, которое я получаю:

java.security.AccessControlException: access denied(java.io.FilePermission filename.pdf write)

Я положил f.setReadable и f.setWriteable, где f - файл и ничего. Небольшая помощь, пожалуйста.

1 Ответ

2 голосов
/ 04 ноября 2011

Существуют ограничения безопасности для того, что может делать неподписанный апплет, и одна из вещей, которые он не может сделать, это получить доступ к локальной файловой системе (полный список см. здесь )У вас есть несколько вариантов:

  1. Подпишите ваш апплет .Если пользователь затем запустит ваш апплет, он не будет работать с какими-либо ограничениями безопасности.Однако подписание вашего апплета доверенным сертификатом стоит не менее 100 долларов в год, и если вы подпишетесь самостоятельно, никто не будет доверять вашему апплету.И даже если вы подписываете доверенный сертификат, пользователь может решить не запускать его.
  2. Настройте ваш апплет с файлом JNLP .Это позволит вашему апплету использовать пакет javax.jnlp .Затем вы можете использовать FileOpenService и FileSaveService, чтобы попросить пользователя разрешить вам чтение / запись одного конкретного файла.Кроме того, вы можете использовать PersistenceService для постоянного хранения небольшого объема данных в браузере.
...