2016-07-18 2 views
2

Я работаю над исследованием, чтобы переместить существующий апплет (), чтобы продлить Applet) на Java Web Start из-за устаревания в Java 9. Однако, похоже, большинство документов по миграции Oracle предлагают разработчику использовать апплет «» -desc ", чтобы создать новый JNLP и выполнить миграцию. Означает ли это, что запуск апплетов за пределами браузера не будет не рекомендуется?Переход на Java Web Start - будет ли Applet-Desc устаревшим?

Если нет, то какой рекомендуемый подход? Говорить «переписать апплет» не помогает ... вот что говорят все. На самом деле не дает мне «как».

Каковы возможные решения и примеры/учебные пособия по миграции? Я не могу найти гораздо более новую документацию, я вижу много вещей в период с 2001 по 2011 год. Похоже, что большинство веб-сайтов, которые предоставляют примеры, больше не размещают приложения или не подписаны должным образом.

EDIT

Моя самая важная часть вопроса: Является ли Oracle протестующий класс Applet, когда протестующий плагин браузера? Или, можем ли мы использовать классы, расширяющие Applet в теге в JNLP, без предупреждения об устаревании?

Для моего апплета требуется аутентификация пользователя и файлы cookie сеансов, которые динамически генерируются в нашем JSP. Я видел онлайн, что this is possible. Это приложение JWS: не используется в автономном режиме и предназначено для запуска с HREF. Это все еще актуально?

+0

В зависимости от того, что делает ваш апплет, может не так много переписать. То, что вам нужно написать (и читать и понимать), это файл jnlp. Вы правы в том, что «запуск апплетов за пределами браузеров не будет устаревшим» - именно это можно сделать с помощью java web start. –

+0

Удивительно, поэтому вы имеете в виду, что мы все еще можем расширять апплет, и нам просто нужно обслуживать теги XML JNLP вместо тегов HTML? Я имею в виду инструкции, которые я нашел по адресу: https://kbdeveloper.qoppa.com/?p=2404. Я знаю, что потребуется дополнительная работа для того, чтобы наши пользовательские сеансы ... у нас в настоящее время есть некоторые CSRF-файлы для передачи. Мы уже загружаем апплет в JSP; поскольку мы уже используем JSP, должно ли быть так же просто, как изменение типа контента на «application/x-java-jnlp-file» и добавление переменных запроса в URL-адрес JNLP? – ryanpm40

+0

Кроме того, если кто-то может помочь объяснить разницу между jnlp.jar и jnlp-servlet.jar, это было бы потрясающе. Я не совсем уверен, что включить? Любые полезные руководства, о которых вы знаете, очень ценятся :) – ryanpm40

ответ

2

Вещь, которая устарела, производится производителями браузеров (хотя Oracle, понимая ситуацию, теперь советует не развивать их). Таким образом, Oracle не «устарел» тег апплета (1) таким же образом, что он устарел от других классов, методов или атрибутов, которые иногда упоминаются в Java Docs.

Что касается запуска апплета с использованием JWS, да, это должно «работать». Но обратите внимание, что в то время как (например) Chrome использовал для передачи JNLP прямо в программу, зарегистрированную как потребитель этого типа файла (в котором он будет передан в Java Web Start Client, включенном в JRE), теперь он вызывает сначала загрузите JNLP, затем явно решите запустить этот файл.

  1. Update: Oracle не возражали ярлык апплета, но они будут делать фактически то же самое, что прийти Java 9. От JDK 9 and the Java Plugin:

К концу 2015 года, многие производители браузеров либо удалили, либо объявили временные рамки для удаления поддержки плагинов на основе стандартов, исключая возможность внедрения технологий Silverlight, Java, Flash и других стандартов на основе стандартов.

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

+0

Благодарим за информацию, которую вы знаете о Chrome; надежда на совместимость с браузерами, отличными от IE; Знаете ли вы, что Edge запускает JWS? Или только IE? – ryanpm40

+0

На самом деле, Oracle устаревает плагинов браузера в 1.9, намереваясь полностью удалить его на более позднюю дату. Просто не был уверен, что это означает, что весь класс исчезнет. Мне интересно, можете ли вы просто указать Chrome «всегда открывать файлы этого типа» после загрузки первого JNLP? – ryanpm40

+0

* «Вы можете просто указать Chrome« всегда открывать файлы этого типа »после загрузки первого JNLP?» * Я не знаю и не забочусь, учитывая, что вы не должны сообщать конечному пользователю. Просто дайте им простые инструкции - например, «Откройте его после загрузки, чтобы запустить приложение». *. –

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