JNLP: Java Network Launching Protocol

Las aplicaciones escritas en Java tienen la capacidad de poderse ejectura en una gran cantidad de máquinas distintas (desde móviles y tablets hasta ordenadores con casi cualquier sistema operativo). Además, también está muy extendida su ejecución en páginas web como applets.

No obstante, a la hora de ejecutar alguna aplicación de escritorio en java las cosas no son tan fáciles. Sin ir más lejos, a nivel de usuario no es posible ejecutar un .JAR con windows ni con MacOS. Además, en linux la implementación de Java no está tan introducida (ya que Java no es libre).

Es por ello que el JNLP es un buen sistema para lanzar aplicaciones de usuario. Una aplicación que utilice la tecnología JNLP es una aplicación que puede abrirse desde internet como un simple link con extensión .JNLP (que en realidad es un archivo .XML con una estructura predefinida), que descarga la última versión del programa (si es necesario) y lo ejecuta. Un ejemplo de código para usar el sistema JNLP se puede ver en la wikipedia.

Para probar un poco, he creado un pequeño programa con Netbeans que implemente el JNLP. En Netbeans implementarlo es tan fácil como activar el Java Web Start en las propiedades del proyecto en cuestión, y él solo se encarga de crear el archivo .JNLP.

El código fuente que he utilizado ha sido:

package pruebajnlp;

import java.awt.FlowLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class Main {
public static void main(String[] args) {
JFrame f = new JFrame();
JLabel b = new JLabel(«Bienvenido!  (Prueba JNLP)»);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setLocation(100, 100);
f.setSize(200, 100);
f.setLayout(new FlowLayout());
f.getContentPane().add(b);
f.setVisible(true);
}
}

Y el resultado se puede comprobar pinchando aquí (es necesario abrirlo con «Java Web Start», que si no lo tienes puedes conseguirlo aqui). Esta es una prueba más de las facilidades de Java a la hora de programar fácilmente aplicaciones reales.

Todos los archivos (código fuente, ejecutable .JAR y archivo .JNLP) están comprimidos aqui:

Ejemplo JNLP (Java)
Ejemplo JNLP (Java)
PruebaJNLP.zip
5.3 KiB
148 Downloads
Details