domingo, julio 27, 2008

Despliega aplicaciones por la red con un simple click

La tecnología Java Web Start permite descargar, ejecutar y mantener actualizada una aplicación en cualquier sistema con una maquina virtual de java.

Por ejemplo: Haciendo click sobre el icono "Launch", descargaras y ejecutaras en tu maquina una aplicación de escritorio que está alojada en los servidores de Sun.



La siguiente vez que ejecutes la aplicación, ésta se auto-actualizará antes de volver a ejecutarse en tu equipo. Existen varios niveles de ejecución, además es posible proponer al usuario la creación de un icono de acceso rápido y también mostrar una imagen personalizada durante la carga.

Para distribuir cualquier aplicación java con este sistema debemos empaquetarla en un ".jar", crear un archivo ".jnlp" y subirlos a un servidor web configurado adecuadamente.

Vamos a ver como sería esto ahorrándonos el servidor web. Es decir, alojando la aplicación en nuestro propio disco:

Primero crearemos una clase "Example.java" que mostrará un simple diálogo de texto.

import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class Example extends JFrame {

private static final long serialVersionUID = 1L;

public Example() {
super("Mi Ventana");

JOptionPane.showMessageDialog(this, "Hola, Mundo!");

this.pack();
this.setVisible(true);
}

public static void main(String[] args) throws Exception {
new Example();
}

}


Luego la compilamos y empaquetamos sus binarios en un ".jar"
javac Example.java
jar cf Example.jar Example.class
(El archivo de manifiesto debe indicar la clase de entrada de la aplicacion)

Por último creamos el archivo "Ejemplo.jnlp" que define ciertos parámetros de la aplicación.

<jnlp codebase="file:/home/user/" href="Example.jnlp">
<information>
<title>Titulo</title>
<vendor>Vendedor</vendor>
</information>
<resources>
<j2se version="1.4+">
<jar href="Example.jar">
</jar>
<application-desc class="Example">
</application-desc>
</j2se>
</resources>
</jnlp>

Y ya podemos hacer click sobre Example.jnlp o bien ejecutar la ordern "javaws Example.jnlp"

(Lo marcado en rojo arriba indica la ruta donde tengamos nuestro Ejemplo.jar.)

Añadir que en .NET existe algo parecido llamado ClickOnce

Enlaces:
Java Web Start Technology
Java Tutorials Lesson: Java Web Start
Java Web Start Guide

martes, julio 08, 2008

RFC-1

Hoy traigo una curiosidad friki de las mías.

¿No se han preguntado nunca cuál es el primer RFC de todos?, pues yo hasta hace 5 minutos tampoco :D.

El primer RFC data del 7 de Abril de 1969 (antes de que el hombre llegase a la luna y todo) y trata sobre el tipo de software que deben utilizar los hosts para comunicarse entre ellos. No una clase de software concreto sino más bien la arquitectura de este, lo que debe y no debe hacer y que problemática hay en esto de la comunicación.

http://www.faqs.org/ftp/rfc/rfc1.txt