Как загрузить подписанный апплет с локального диска с полными разрешениями? - PullRequest
2 голосов
/ 03 марта 2011

У меня есть приложение, в котором javascript-код обращается к методам java-апплета, которые пишут на локальный диск (просто чтобы заметить - это не возможно напрямую, но есть обходной путь для этого, который позволяет это сделать).Апплет является самозаверяющим апплетом, поэтому пользователи должны сначала разрешить его запуск.

Если кодовая база апплета установлена ​​на "http://...", все работает нормально, в том числе в FF, Chrome и Opera.Тем не менее, я хотел бы поместить этот апплет в локальной файловой системе.Однако, если я использую кодовую базу "file://..." (я также пытался вообще не использовать кодовую базу и напрямую писать полный путь к jar-файлу в архив), это не работает, апплет не загружается с всплывающим окном Warning-Security, которое позволяет пользователю разрешить запускапплеты.

До сих пор я тестировал его только в FF (3.6.1.4), версия Java - 1.6.0.21.

Ограничены ли подписанные апплеты только для использования по протоколу HTTP?Или есть какое-то решение?

Ответы [ 2 ]

1 голос
/ 08 марта 2011

Апплетам, загруженным из локальной файловой системы, разрешается записывать файлы только в каталог, содержащий апплет, или ниже.Таким образом, если апплет находится в C:\MyProjects\MyAppletTest, он сможет читать и записывать файлы в этом каталоге и его подкаталогах, но не в C:\MyProjects.Вы можете переопределить это поведение с помощью файлов политики, как описано в Краткий обзор по контролю над апплетами

1 голос
/ 03 марта 2011

.. есть ли обходной путь?

Возможно, использование служб API JNLP в неподписанном апплете будет работать лучше. У меня есть демо. объекта JNLP FileContents .

Подробнее об использовании служб JNLP во встроенном апплете см. Ссылки на «плагин следующего поколения» на странице информации о апплете .

...