Instalación de jUDDI y preparación de cliente java

De ChuWiki

Introducción[editar]

UDDI es una especificación estándar para poder registrar y consultar servicios web. Dicho de otra forma, si tenemos arrancado un servidor que cumpla el estándar UDDI, podemos dar de alta o consultar en él empresas, servicios, y qué empresas ofrecen qué servicios y los detalles de acceso a ellos.

El mismo servidor UDDI ofrece sus servicios para dar de alta o consultar a través de web services, por lo que para usarlo necesitaremos crear clientes de esos web service.

Vamos aquí a prepararnos para trabajar con java en un servidor que ofrezca UDDI.

Instalación de jUDDI[editar]

Posiblemente el servidor más conocido de UDDI listo para instalar es Apache jUDDI. En las descargas tenemos tres opciones:

  • juddi-dist-3.1.0.zip Descargar el war para desplegar en un contenedor de aplicaciones como tomcat. En mis pruebas he visto que a este war le faltan un montón de librerías .jar, por lo que para ponerlo en marcha debemos ir buscando y añadiendo esos jar.
  • juddi-tomcat-3.1.0.zip Descargar el paquete con tomcat. Esta opción es más fácil, aunque nos bajamos un tomcat completo. Arrancándolo con el script correspondiente del directorio bin ya tenemos en marcha nuestro servidor UDDI.
  • juddi-portal-bundle-3.1.0.zip Descargar el paquete con tomcat y portal. Esta opción es similar a la anterior, pero además viene con una interfaz web que nos permite visualizar y hacer ciertas cosas con nuestro UDDI. Puede ser la opción ideal para nuestras pruebas, así en la interfaz web veremos si los datos que hayamos intentado insertar lo han hecho correctamente o no.

Una vez arrancado, podemos acceder con la url http://localhost:8080/juddiv3/

Preparación de java[editar]

Para hacer nuestro cliente java podemos buscar y descargarnos librerías java que nos ayuden a programar nuestro cliente. Hay varias como Ruddi, o el mismo jUDDI viene con sus clases cliente (el juddi-client-3.1.0.jar que viene en el directorio juddi-portal-bundle-3.1.0\webapps\juddiv3\WEB-INF\lib de nuestra instalación de juddi.

Otra opción quizás algo más incómoda pero que es la que usaremos en estos tutoriales, es coger los wsdl de los distintos servicios ofrecidos por jUDDI y generar las clases java correspondientes con herramientas como wsimport que viene con jax-ws metro.

Arrancado juddi, en http://localhost:8080/juddiv3/services tenemos a la derecha enlaces a todos los wsdl ofrecidos. No tenemos más que ir copiando esos enlaces e ir ejecutando wsimport para cada uno de ellos. Por ejemplo, para el servicio de inquiry (consulta) que aparece en la caja UDDI_Inquiry_PortType de la URL anterior.

wsimport -d directoriodestino -keep http://localhost:8080/juddiv3/services/inquiry?wsdl

Esto generará los fuentes java para facilitarnos la tarea de hacer el cliente en el directoriodestino que indiquemos. Por supuesto, debemos haber puesto previamente wsimport en el path de búsqueda de ejecutables.

Debemos generar al menos el servicio UDDI_Security_PortType para poder autentificarnos y luego los de UDDI_Inquiry_PortType para poder consultar y UDDI_Publication_PortType para poder publicar