Протокол запуска сети Java
Java Network Launching Protocol ( JNLP ) — это спецификация, используемая Java Web Start . Эта спецификация позволяет централизовать программу на веб-сервере, избегая проблем с распространением и установкой .
Что значит
Установка любого приложения обычно состоит из нескольких шагов:
- Он загружается из Интернета или размещается на съемных носителях ( компакт-диск , DVD , флешка и т.п.)
- Он устанавливает.
- Он работает.
Программа javaws позволяет нам сделать это более простым и прозрачным для пользователя способом, поскольку мы можем выполнить эти шаги, просто щелкнув ссылку во время использования нашего браузера, чтобы загрузка, установка и выполнение выполнялись прозрачно. пользователю.
JavaWS не использует апплеты , так как загружает обычные Java -приложения и поэтому требует виртуальной машины . Кроме того, он включен в среду выполнения Java (JRE) Java, начиная с версии 1.4.
Как это работает
Любая привязка JNLP при запуске процесса выполнения запрашивает у пользователя авторизацию. Кроме того, приложения могут быть подписаны ( электронная подпись ), чтобы гарантировать отправителю приложения, чтобы они могли следовать модели безопасности платформы Java 2, чтобы гарантировать целостность данных, которые мы получаем через сеть, так что ни один человек в Промежуточные атаки , отравление кэша DNS или повреждение данных.
Структура файла JNLP
Файл JNLP представляет собой специально сформированный XML , состоящий из:
- Типичный заголовок XML:
<?xml version="1.0" encoding="conjunto de caracteres"?>
Где «набор символов» может быть любым допустимым
набором : utf-8, ISO-8859-1...
- Путь по умолчанию, чтобы файлы можно было вызывать по относительному пути.
<jnlp spec="1.0+" codebase="http://URL/directorio/del/programa" href="NombreDelArchivoJNLP.jnlp">
- Один или несколько информационных тегов , в которых размещаются различные фрагменты информации (см. пример).
- Бирка безопасности (с различной информацией).
- Тег ресурсов (с разной информацией).
- Тег application-desc с классом по умолчанию для выполнения.
Пример
Ниже приведен краткий пример типичного файла JNLP. Он не включает все возможные варианты.
<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+" codebase="http://es.wikipedia.org/wiki/JNLP:8080/ElPrograma/" href="jnlp.jnlp">
<information>
<title>Ejemplo de un JNLP wikipédico</title>
<vendor>Anónimo</vendor>
<homepage href="http://es.wikipedia.org/Portada" />
<description> Ejemplo de un JNLP muy wikipédico</description>
<description kind="short">
Esta es una breve información, repito, muy wikipédica.
</description>
<icon href="NombreImagen.jpg" />
<offline-allowed />
</information>
<security>
<all-permissions />
</security>
<resources>
<j2se version="1.4+" />
<jar href="aplicación.jar" />
<jar href="lib1.jar" />
<jar href="lib2.jar" />
</resources>
<application-desc main-class="org.wikipedia.es.JNLP" />
</jnlp>