Java Network Launching Protocol

En el mundo actual, la importancia de Java Network Launching Protocol es evidente en todos los ámbitos de la vida. Ya sea en el mundo de los negocios, en la política, en la ciencia o en la cultura, Java Network Launching Protocol juega un papel crucial en la forma en que las personas interactúan, se informan, y toman decisiones. Es por ello que resulta fundamental comprender en profundidad el impacto que Java Network Launching Protocol tiene en nuestra sociedad, así como las posibles implicaciones que su influencia podría tener en el futuro. En este artículo, exploraremos los diferentes aspectos y perspectivas relacionadas con Java Network Launching Protocol, con el objetivo de proporcionar una visión general y esclarecedora sobre su relevancia en el mundo actual.

Java Network Launching Protocol (JNLP) es una especificación usada por Java Web Start. Esta especificación permite tener centralizado en un servidor web un programa evitando los problemas de distribución e instalación.

Qué hace

Al instalar cualquier aplicación normalmente se dan una serie de pasos:

El programa javaws permite hacer esto de un modo más fácil y transparente para el usuario, ya que podemos realizar estos pasos simplemente pinchando sobre un enlace mientras estamos utilizando nuestro navegador, de modo que descarga, instalación y ejecución se realizan de modo transparente al usuario.

JavaWS no usa applets, ya que descarga aplicaciones Java normales y necesita, por tanto, de una máquina virtual. Además, viene incluido en el Java Runtime Environment (JRE) de Java desde la versión 1.4.

Cómo funciona

Cualquier enlace JNLP al iniciar el proceso de ejecución pide autorización al usuario. Además, las aplicaciones pueden estar firmadas (firma electrónica) para asegurar el remitente de la aplicación de modo que pueden seguir el modelo de seguridad de la plataforma Java 2 para asegurar la integridad de los datos que obtenemos a través de la red, de forma que no se produzcan ataques de tipo Man in the Middle, DNS cache poisoning, o corrupción de datos.

Estructura de un archivo JNLP

Un archivo JNLP es un XML especialmente formado compuesto por:

  • Una cabecera XML típica:

<?xml version="1.0" encoding="conjunto de caracteres"?>

Donde "conjunto de caracteres" puede ser cualquier conjunto válido: utf-8, ISO-8859-1...

  • Una ruta predeterminada para que los archivos puedan ser llamados desde una ruta relativa.

<jnlp spec="1.0+" codebase="http://URL/directorio/del/programa" href="NombreDelArchivoJNLP.jnlp"> 

  • Una o más etiquetas information en el que se colocan varias informaciones (ver ejemplo).
  • Una etiqueta security (con información variada).
  • Una etiqueta resources (con información variada).
  • Una etiqueta application-desc con la clase predeterminada a ejecutar.

Ejemplo

El siguiente es un breve ejemplo de un archivo típico JNLP. No incluye todas las posibles opciones.

<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+" codebase="http://es.wikipedia.orghttps://wikifreehand.com/es/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>

Enlaces externos