Запуск апплета со страницы html - PullRequest
0 голосов
/ 29 марта 2011

Я сделал простой апплет, который просто вызывает муравей-мишень, а именно пакетный файл по нажатию кнопки. Для этого я использую

ExecTask exec = new ExecTask();
exec.setExecutable("run.bat");
Commandline.Argument arg = exec.createArg();
arg.setValue("-buildfile D:/cloudengine/Applet/build.xml");
exec.execute();

Когда я запускаю это из затмения, оно работает правильно. Но мое требование состоит в том, чтобы запустить это со страницы HTML, поэтому я создал простой HTML с тегом апплета

<APPLET ALIGN="CENTER" CODE="HtmlAntTest.class" WIDTH="800" HEIGHT="500"></APPLET>

Но в Java-консоли браузера я получаю исключение при нажатии кнопки

Exception in thread "AWT-EventQueue-2" java.lang.ExceptionInInitializerError
at org.apache.tools.ant.taskdefs.ExecTask.<init>(ExecTask.java:72)
.
.
.
Caused by: java.security.AccessControlException: access denied (java.util.PropertyPermission file.encoding read)

Любые указатели были бы очень полезны. Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 29 марта 2011

Как прокомментировал das_weezul, для этого апплету потребуются повышенные привилегии.Хотя изменение файлов политики является одним из способов достижения этого, оно подвержено ошибкам и нецелесообразно при развертывании.

Чтобы получить доверенный апплет во время развертывания, необходимо:

  1. Поместите классы в файл Jar (подробнее см. Упаковка программ в файлы JAR ).
  2. Цифровая подпись файла Jar (см. Подпись и проверка файлов JAR длядетали).
  3. Получите от конечного пользователя ОК для подтверждения кода, когда вам будет предложено доверять ему.

Настройка подписи кода в файле сборки занимает немного времени, но после этогоправильно это можно забыть.

0 голосов
/ 29 марта 2011

Вам необходимо предоставить дополнительные права на апплет.Здесь все подробно объясняется: http://java.sun.com/developer/onlineTraining/Programming/JDCBook/appA.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...