Апплету необходимо подписать всякий раз, когда он хочет получить доступ / выполнить локальных системных ресурсов. Это включает выполнение Runtime#exec()
или ProcessBuilder
, которое требуется для получения списка запущенных процессов.
Вы можете найти здесь базовый пример того, как получить этот список в Windows. Я бы посоветовал проверить if (System.getProperty("os.name").startsWith("win"))
, прежде чем продолжить.
Перенос данного примера в апплет не так сложен, просто позвольте классу расширить JApplet
и выполнить весь код изнутри AccessController#doPrivileged()
.
Что касается подписания апплета, вы можете либо подписать его вручную , конечному пользователю будет выдано только предупреждение системы безопасности с подтверждением, выполнять его или нет, или вы можете разрешить его подпись третьим лицом компания для некоторых $$$, например VeriSign , таким образом, конечный пользователь не будет сталкиваться с предупреждением безопасности. Отказ от подписи приведет к тому, что апплет вообще не сможет работать.