2008-10-03 3 views
11

У меня есть сторонний апплет, для которого JRE v1.5_12 работает правильно. Пользователь устанавливает JRE v1.6.07 или лучше. Раньше это было с 1.5 и ниже, что я мог бы иметь несколько JRE на машине и указать, какой из них использовать, но с 1.6, которые должны быть сломаны. Как сообщить браузеру, что я хочу использовать v1.5_12 вместо последнего установленного?Как вы определяете конкретную JRE для апплета браузера?

+3

Что происходит, когда вы используете 1.6? – Milhous 2008-10-03 22:50:46

ответ

14

Из соображений безопасности вы больше не можете принуждать его использовать старые JRE. У релиза 12 есть огромная дыра в безопасности, и каждый устанавливает версию 13 для ее исправления. Evil java-апплеты могли просто сказать «бежать с релизом 12, пожалуйста», а затем выполнить свои подвиги, сделав патчи бесполезными.

Скорее всего, у вас есть код с дырками безопасности, которые блокируют новые JRE, поскольку это может привести к угрозе безопасности. Исправьте свой код, должны быть довольно незначительные изменения, тогда вам не придется беспокоиться.

См. this page для получения дополнительной информации об изменении.

1

Новый механизм апплета (который будет поставляться с 1.6u10, когда Солнце приближается к официальной отправке) дает вам огромное количество контроля в этой области. Потребуется некоторое время, чтобы получить достаточное количество систем на 6u10, где вы можете реально полагаться на функциональность (если только вы не являетесь корпоративной), но она приближается (похоже, это около 5 лет слишком поздно).

Вот статья JavaWorld описывая это на очень высоком уровне: article text

6u10 также инструментарий развертывания, который обеспечивает очень простой в использовании JavaScript фрагменты, которые можно включить в ваш апплет страницах развертывания. Эти фрагменты обрабатывают проверку версии JRE, уведомление пользователя, загрузку JRE по требованию и ряд других вещей, которые в противном случае представляют собой проблему (не невозможно, просто боль). Набор для развертывания был разработан для отказа изящно, поэтому он делает удивительные вещи, если установлено 6u10 или выше, и возвращается к достойному поведению для более старых JRE.

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

 Смежные вопросы

  • Нет связанных вопросов^_^