Empezar con jaxmpp2

De ChuWiki
Revisión del 18:55 29 abr 2011 de Chuidiang (Discusión | contribuciones) (Introducción)

Saltar a: navegación, buscar

Introducción

jaxmpp2 es una librería GWT que nos permite hacer un cliente web de chat usando GWT y con el protocolo XMPP (en el que se basa jabber). Puesto que la documentación de esta librería es bastante escasa, en este tutorial vamos a ver un pequeño ejemplo sobre cómo empezar con ella, lo básico para entrar en una sala de multiconferencia.

Las librerías

Lo primero que necesitamos son las librerías jaxmpp2. Podemos bajarlas de subversion desde https://svn.tigase.org/reps/jaxmpp2 . En ese repositorio hay tres librerías, sólo necesitamos jaxmpp-core y jaxmpp-gwt. Pero si queremos utilizar maven, necesitaremos sacar los tres proyectos y el pom.xml principal.

Una vez extraidas las dos librerías, sólo necesitamos generar para cada una de ellas un jar que contenga los fuentes, los .class y el fichero gwt.xml que hay en los directorios correspondientes. Si hemos extraído todo el proyecto y usamos maven, nos bastará con ejecutar el comando "mvn install" en el directorio principal para que los jar queden en nuestro repositorio de maven, o bien ejecutar mvn package y luego recoger los jar de los directorios target correspondientes

./jaxmpp-core/target/jaxmpp-core-2.0.0-SNAPSHOT.jar
./jaxmpp-gwt/target/jaxmpp-gwt-2.0.0-SNAPSHOT.jar

y añadirlas a nuestro proyecto gwt.

Los servidores

Como servidor de chat puede valernos, por ejemplo, openfire, que se instala fácilmente. Openfire atiende por defecto a clientes http por el puerto 7070.

Nuestro cliente, aunque lo hagamos con java, GWT lo traducirá a unas páginas html con javascript, por lo que usaremos también un servidor apache para alojar esas páginas.

Es necesario hacer una redirección en este servidor apache, de forma que las peticiones que haga nuestro cliente a la página en la que está alojado, se redirijan al servidor de openfire, a su puerto 7070. Para ello tenemos que configurar un virtual host. Para nuestro ejemplo, en el fichero de virtual host pondremos


Esta redirección hace difícil que podamos ejecutar nuestro programa java con GWT en nuestro entorno de trabajo favorito (eclipse, netbeans), ya que en el servidor interno de estos IDEs no podremos hacer estas redirecciones.

Establecer la conexión

Lo primero de todo es establecer la conexión con el servidor.