Подтвердить что ты не робот

Возражения против Java Webstart?

С момента выпуска Adobe AIR мне интересно, почему Java Web Start больше не уделял больше внимания, поскольку мне кажется, что это очень похоже, но веб-запуск доступен в течение гораздо более длительного времени.

Является ли это главным образом из-за плохого маркетинга от Sun, или есть ли больше технических проблем, кроме необходимости наличия подходящей JVM? У вас плохой опыт использования Web Start? Если да, то какой? Какие рекомендации вы используете при использовании Web Start для распространения приложений?

4b9b3361

Ответ 1

В моей компании мы использовали Java Web Start для развертывания приложений Eclipse RCP. Это была боль в настройке, но она работает очень хорошо на месте. Поэтому единственная рекомендация, которую я мог бы сделать, - начать с малого, чтобы понять ее. Сначала развертывание одного простого приложения. Попытка развернуть полный продукт, который уже сделан без опыта работы с JWS, довольно быстро усложняется.

Кроме того, изучение способов передачи аргументов в JWS-приложение было неоценимым для отладки. Установка переменной среды JAVAWS_VM_ARGS позволяет установить любое произвольное свойство виртуальной машины Java. В моем случае:

-Xdebug -Xnoagent -Xrunjdwp: transport = dt_socket, server = y, suspend = y, address = 4144

Полезно, когда вам нужно проверить проблемы во время запуска (suspend = y)

Я думаю, что основная проблема для принятия Java Web Start заключается в том, что его довольно сложно настроить. Кроме того, так или иначе возникает такой диссонанс: когда у вас есть настольное приложение, люди ожидают, что установщик сможет дважды щелкнуть. Когда у вас есть веб-приложение, люди ожидают, что смогут использовать его прямо из браузера. Java Web Start здесь не существует...

Он широко используется в интрасетях.

Ответ 2

Я работаю в интранете Банка с 5 лет, и мой отдел разработал и распространил множество приложений Java Web Start, которые используются во всем мире, я думаю, что Java Web Start имеет лучшие из настольных приложений ( легкая разработка, богатый пользовательский интерфейс, вычислительная мощность на клиентской машине) и интернет-приложения (простое развертывание и обновление).

Мне очень нравится Java Web Start

Ответ 3

Я сделал проект один раз в JWS, и было больно работать. Хуже того, я даже не имел дело со всем Интернетом, это было небольшое приложение, которое собиралось использовать только несколько человек в моем офисе. Я несколько раз поднимал руки с отвращением, одновременно настраивая сервер и помогая им настраивать приложение на клиентских машинах.

Я думаю, что AIR теперь становится все более популярным (хотя я никогда не знаю, как далеко он его получит), потому что в нем есть приложения, которые люди действительно хотят использовать (назовите свое любимое приложение JWS... продолжайте, я жду), как twhirl. Я все еще не большой поклонник работы AIR, но это намного лучше, чем JWS.

Ответ 4

Вот список из mindprob:

  • Приложения Java Web Start очень медленно запускаются. Монитор загружает новую JVM для себя и для каждого приложения. Приложения всегда проверяют в Интернете обновления, загрузку и обработку всего нового JNLP файла, а не просто проверку его даты. Однако, если для проверки новой версии требуется около 80 секунд, это означает, что у вас могут возникнуть проблемы с прокси-сервером. Запустите javaws.exe и нажмите править ⇒ Настройки ⇒ Настройки сети ⇒ Прямой. Вы не хотите, чтобы JWS пыталась использовать прокси-сервер Google Accelerator. Также проверьте IE, щелкните инструменты ⇒ Свойства обозревателя ⇒ Соединения ⇒ Настройки LAN и убедитесь, что все так, как вы ожидаете.
  • Обновления занимают примерно столько же времени, сколько и исходное приложение. Практически не было хитрости, чтобы сделать обновления компактными.
  • Для корректного обслуживания файлов jardiff или использования гиперссылки следующего пакета200 требуется пользовательский код, запущенный на ISP.
  • Он не сильно изменился с момента его первоначального выпуска. Это может быть еще один сиротный продукт. Этого не заслуживает. Тем не менее, Sun выпустила новую бета-версию 1.2 через год или около того, ничего не происходит, и она была интегрирована в JRE, так что посмотрите, снова ли она поднимает пар. Есть некоторые серьезные проблемы, которые они игнорировали, например, сертификат ОК, скрывающийся за заставкой, и требующий одобрения для каждой банки отдельно. Даже если это осиротело, ничего страшного не произойдет. Если вы не пишете неподписанные JWS-приложения и не используете песочницу JWS, ваши приложения JWS будут работать автономно.
  • Требуется специальная настройка типа MIME JNLP как в ISP, так и в браузере клиентов. Ни один из них не находится под прямым контролем разработчиков.
  • Если у вас есть срочное обновление, вы не можете его установить до того, как приложение снова запустится.
  • Ему нужна жесткая схема для назначения места на жестком диске на машине клиентов, которая обладает следующими свойствами:
    • Названия назначенных каталогов должны избегать конфликтов имен с другими поставщиками. Они должны включать основное имя пакета приложения.
    • Имена должны иметь смысл для конечного пользователя. Они должны быть чем-то, что он может запомнить, найти и ввести, когда ему нужно найти файлы с помощью настольных инструментов.
    • Схема должна обеспечивать место как для файлов для каждого пользователя, так и для каждого приложения.
    • Программа должна работать на любой платформе без изменений, чтобы иметь дело с поиском ее файлов.

Ответ 5

Java Web Start - это правильный способ запуска более крупных приложений Java, поскольку он позволяет легко обновлять и устанавливать/загружать приложение и позволяет улучшить UI/UX, чем Java-апплеты.

Однако есть некоторые препятствия для запуска приложений Java Web Start с веб-страницы с использованием общих браузеров с настройками по умолчанию:

  • Sun/Oracle не удалось создать рабочий браузер. См. http://crbug.com/10877, например, о Google Chrome/Chromium. В принципе, плагин Java не реализует необходимые материалы NPAPI, чтобы заставить Firefox и Chrome надежно перенаправлять двоичный код MIME-типа application/x-java-jnlp-file в javaws/javaws.exe.

  • Sun/Oracle не смог получить реальный зарегистрированный MIME-тип для файлов Java Web Start .jnlp. Префикс application/x- технически означает черновик или частный.

  • Sun/Oracle не использовали схему URL вместо MIME-типа, когда намерение заключается в том, что Java Web Start обрабатывает загрузку и запуск приложения. Например, если вместо использования URL-адреса, например https://example.com/app/launch.jnlp Java Web Start были запущены как javaws://example.com/app/launch.jnlp, все будет работать намного плавнее. Это связано с тем, что в этом случае веб-браузеру не нужно даже загружать файл .jnlp, он просто передает полный URL-адрес обработчику схемы (который был бы двоичным кодом javaws).

Обратите внимание на повторяющуюся часть ( "Sun/Oracle failed..." ), и вам больше не нужно удивляться, почему Java Web Start никогда не получал много усилий. Большая недостающая часть получает ссылку веб-страницы на надежно запускает двоичный файл javaws с данным .jnlp файлом. Это должно быть технически очень просто (просто зарегистрируйте новую схему URL, если установлен бинар javaws), но Sun/Oracle этого не сделали. Я лично считаю, что весь беспорядок был вызван попыткой испортить MIME-тип, а не просто использовать новую схему URL. И даже материал MIME-типа был сделан очень плохо, потому что он громко кричал.

Если вы все еще хотите использовать Java Web Start, просто подготовьте хорошую документацию для правильной настройки браузера, чтобы обойти беспорядок, оставленный Sun/Oracle. Хорошая часть заключается в том, что ее нужно выполнить только один раз, и она будет работать на любом сайте, использующем Java Web start. Плохая часть состоит в том, что обычно браузер никогда не был настроен на правильную работу с файлами .jnlp, и вы получаете вину за использование "труднодоступных технологий", потому что пользователи не хотят настраивать свои браузеры только для использования вашего приложения. Я упоминал, что Sun/Oracle не удалось настроить браузер автоматически?

Ответ 6

Мой опыт:
Я использовал его около 2006 года, приложение для интранета для банка.

Первая загрузка была прекрасной, однако, когда вы хотите выпустить новую версию, кеширование файлов jar не сработало, поэтому новые файлы не были перенесены на клиент.

Провел неделю, пытаясь исправить это без успеха.