Подписанный апплет выдает предупреждение безопасности, но запускается, если нажата кнопка "да"
У меня есть подписанный апплет, который создает меню из XML-файла. При загрузке я получаю предупреждение безопасности Java о подписанном и неподписанном коде. Апплет использует jdom.jar
Неважно, если я нажму "да" в диалоговом окне с предупреждением о безопасности, чтобы заблокировать неподписанный код, или если я нажму "нет", апплет запустится и будет работать, как ожидалось.
Я обнаружил, что строка предупреждения в jdom, которая вызывает SAXParserFactory.newInstance(), является причиной предупреждения безопасности. Я попытался подписать jdom.jar, но это не помогло.
Как я могу избавиться от предупреждения безопасности без изменения каких-либо настроек в консоли Java?
Заранее спасибо.
3 ответа
Поскольку апплет работает без ненадежного кода, вы можете удалить его? Ненадежный код представляется альтернативной реализацией синтаксического анализатора XML JAXP. Надеемся, что основанный на Xerces в JRE (начиная с 1.4, IIRC) не должен быть слишком плохим.
(Кстати: я настоятельно рекомендую добавить Trusted-Only: true
в манифест ваших подписанных файлов, и Sealed: true
как правило, не плохая идея.
Подпишите банку JAXP (или банку, содержащую SAXParserFactory)
Вам нужно будет подписать весь апплет, если вы используете какие-либо функции, такие как локальный доступ к файлам или загрузчики пользовательских классов. Фабрика может использовать пользовательский загрузчик классов. Браузер может не принять самозаверяющий сертификат без предупреждения.
http://download.oracle.com/javase/1.4.2/docs/guide/plugin/developer_guide/rsa_signing.html