Рекомендуемый сервер для JNLP - PullRequest
2 голосов
/ 19 июля 2011

Я никогда не использовал JNLP, и у меня уже нет веб-сервера / военного сервера, поэтому я установлю его с нуля:

Какой использовать?

  • GlassFish
  • Tomcat
  • Apache
  • Jetty
  • Другой?

Интересно, может ли кто-нибудь, уже использующий JNLP, сделать какие-либо рекомендации для сервера.

Я просто хочу пустую страницу с кнопкой посередине для запуска приложения, ни больше, ни меньше.

Ответы [ 3 ]

10 голосов
/ 19 июля 2011

Если вы используете только JNLP, вам не нужен Java-сервер.JNLP на стороне клиента.Простой http-сервер, такой как Apache HTTP Server, должен быть в порядке.HTTP-сервер будет лучшим решением, чем использование веб-контейнера / сервера Java EE, поскольку JNLP (обычно) представляет собой статический контентДаже lighthttpd должно быть достаточно.

2 голосов
/ 19 июля 2011

Как уже говорилось, подойдет любой сервер, способный обслуживать HTTP. Если ваше приложение WebStart не подписано само по себе (т. Е. Вы подписали соответствующие файлы Jar с кодом), вы, вероятно, могли бы рассмотреть возможность публикации JNLP и его ресурсов через HTTPS. Таким образом, ваши клиенты будут знать, что программное обеспечение, которое они собираются запускать, получило свое законное происхождение. Хотя неподписанные приложения WebStart ограничены в своих привилегиях на компьютере клиента, это все же является мерой, чтобы вызвать доверие у ваших клиентов. С другой стороны, это требует больше усилий по настройке для выбранного вами сервера.

Если вашему приложению понадобятся некоторые расширенные привилегии на компьютере клиента, такие как доступ к файловой системе, тогда я бы порекомендовал вам подписать файлы JAR для автоматического получения необходимых привилегий (не забудьте указать их в элементе в вашем JNLP).

Это ограничения по умолчанию для неподписанных приложений WebStart:

  • Нет доступа к локальному диску.
  • Все ваши банки должны быть загружены с одного хоста. Однако обратите внимание, что вы можете загружать расширения и JRE с любого хоста, если они подписаны и надежны.
  • Сетевые подключения разрешены только к хосту, с которого были загружены ваши файлы jar. («Ограничение по телефону дома.»)
  • Менеджер безопасности не может быть установлен.
  • Нет собственных библиотек (даже в расширениях).
  • Ограниченный доступ к системным свойствам. (Приложение имеет доступ на чтение / запись ко всем системным свойствам, определенным в файле jnlp, а также доступ только для чтения к тому же набору свойств, что и апплеты
0 голосов
/ 19 июля 2011

Вам не нужен сервер для запуска JNLP (Webstart). Вот как работает webstart

Это просто приложение, которое можно запустить через Интернет, это будет процедура с точки зрения пользователя:

пользователь переходит на yourwebsite.com

пользователь видит ссылку: запустите мое удивительное приложение

пользователь нажимает ссылку, которая загружает файл .jnlp

пользователь запускаетjnlp-файл через веб-запуск java (часть java SE, для запуска этого пользователя требуется среда выполнения java JRE)

веб-запуск java читает jnlp для получения информации о сервере, на котором находится соответствующее приложение

jar-файлы загружаются автоматически (в первый раз), а затем приложение запускается

пользователю становится скучно и на следующий день приложение закрывается

, пользователь возвращается и снова щелкает по вашей ссылке

приложение уже загружено, поэтому оно запускается сразу

пользователю снова становится скучно и он закрывает ваше приложение

1 день спустя, вы решаете обновитьВ вашем приложении вы развернете новый файл JAR на своем сервере, заменив один из старых файлов

через 2 дня пользователь снова щелкнет вашу ссылку

java web start распознает, что у пользователя другойверсия загружает обновление автоматически и снова запускает приложение ... ...

...