Ir al contenido principal

Creación de cliente WS con Eclipse

En el post anterior habéis visto como se crea un WS con Eclipse. En este, explicaremos cómo crear un cliente Java sencillo para invocarlo a partir de su fichero WSDL.

Al igual que en el caso anterior, supondremos que tenemos instalado en nuestra máquina el Eclipse 3.3 con el plugin WST (Web Service Tools). Hay varias formas de crear un cliente de un WS.

Creación de WS a través de la URL del fichero WSDL 


Lo primero que tenemos que hacer es crearnos un proyecto simple Java en Eclipse. Para ello, pulsamos File > New > Project. Una vez hecho esto pulsamos sobre Java > Java Project. 

Al hacer esto nos aparece un asistente en el que rellenamos los datos de nuestro proyecto como el nombre o la versión de la JRE que queremos utilizar. Llamaremos al proyecto SumaWSClient y utilizaremos la JRE 1.5.



Pulsamos el botón Next y a nos aparece la ventana para añadir paquetes de código fuente y añadir librerías. En nuestro no tenemos que hacer nada y pulsamos directamente Finish:


Ya tenemos nuestro proyecto Java. Ahora lo que tenemos que hacer es crear las clases cliente que nos ayudarán a invocar nuestro WS. 

Imaginemos que tenemos nuestro WS desplegado en la siguiente ruta local http://localhost:8080/SumaWS/services/OperacionCalculadoraWS?WSDL. Podemos saber la ruta de nuestro WS si abrimos el WSDL y nos vamos al final al elemento address. 

Para crear las clases clientes del WS pulsamos con el botón derecho sobre el proyecto SumaWSClient. En la ventana emergente pulsaremos sobre la opcion New > Other. Se nos abre un asistente en la que tendremos que seleccionar la opción Web Service > Web Service Client y pulsar sobre Next. 


En el campo Service definition introducimos la URL del WSDL (http://localhost:8080/SumaWS/services/OperacionCalculadoraWS?WSDL). El nivel de generación de clases cliente del WS lo dejamos como esté (en mi Eclipse es Deploy client) y pulsamos Next. 


En la siguiente ventana del asistente debemos completar la ruta donde queremos que se generen nuestras clases cliente. Lo dejamos todo como está por defecto y pulsamos Finish. 




Nuestro proyecto quedaría de la siguiente forma:



En el primer circulo señalado en rojo vemos que se han generado nuestras clases clientes del WS. En el segundo circulo vemos que como en el caso de creación del WS se han añadido automáticamente las librerías de Axis para la invocación correcta de nuestro WS.

Para la invocación de nuestro WS creamos una simple clase main con el siguiente código y ya tenemos nuestro cliente funcionando:

package es.jpascu.calculadora;

public class Test {

 /**
  * @param args
  */
 public static void main(String[] args) throws Exception {
  OperacionCalculadoraWSProxy proxy = new OperacionCalculadoraWSProxy();
  proxy.setEndpoint("http://localhost:8080/SumaWS/services/OperacionCalculadoraWS");
  System.out.println("Suma = " + proxy.suma(99, 99));
 }

}



Creación de WS a través del fichero WSDL 

Otra forma de crearlo muy similar a la anterior es a partir del fichero WSDL físicamente en nuestro fichero. Podemos descargar el fichero WSDL a nuestro disco y guardarlo dentro de nuestro proyecto Java.


Luego hacemos click con el botón derecho sobre el WSDL y pulsamos la opción Web Services > Generate Client. Esto nos crearía las clases cliente y añadiría los JARs de AXIS como en el caso anterior. 




Espero que os hayan resultado útiles ambos tutoriales. Como veis son sencillos y prácticos. Desde luego no sólo existe Axis para crear WS. Se pueden crear también  con Spring-WS,  JAX-RPC, XFire, JbossWS... Todas ellas con sus ventajas e inconvenientes, pero eso será en otro artículo.


Comentarios

  1. perdona donde o como creo el server-config.wsdd???

    ResponderEliminar
  2. Me salvastes la vida, no sabes lo que renegue, pase, entre Maven, Spring, JSF, todo, y no lo podia hacer andar, y leo esto... asi de facil, lo hace todo Eclipse... Sos un grosso

    ResponderEliminar
  3. excelente artículo, lo seguí al pie de la letra y funcionó muy bien! gracias por compartir!

    ResponderEliminar
  4. Bueno, simple y conciso. Si señor.

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

Soluciones Alchemy Classic 389 elementos

Hace algún tiempo salió una actualización del Juego Alchemy Classic en la que aparecían más elementos (389 en lugar de 238). Aparte de añadir elementos mejoran algunas traducciones en castellano y mejoran la interfaz, aunque todavía hay algún error en algunos nombres de elementos. Aquí os dejo las soluciones para los que estén atascados y no puedan dormir por las noches: Sustancia primaria Aire=Elemento primario  Fuego=Elemento primario  Agua=Elemento primario  Tierra=Sustancia Primaria Arena=Piedra + Aire Piedra=Tierra + Fuego Arcilla=Arena + Pantano Caliza=Tierra + Amonitas Carbono=Fuego + Madera Cloro=Fuego + Sal + Electricidad CO2(Dióxido de Carbono)=Ceniza + Ácido nítrico Electricidad=Relámpago+ Metales Gas natural= Yacimiento de gas + Pozo Helio=Refinería de gas + Gas Natural Hidrógeno=Electricidad + Agua Hielo=Frío + Agua Imán=Piedra + Metales Metano=Deshechos Vegetales + Pantano Oxígeno=Electricidad + Agua Pe...

Soluciones Alchemy Classic 442 elementos

Después de la resaca navideña y de la cuesta de enero, volvemos para informar la agradable sorpresa que nos ha dado a los fans de Alchemy Classic la empresa NIASOF ,  tras actualizar el juego Alchemy Classic. Una nueva versión con 442 elementos , interfaz mejorada de grupos y lo más importante, nuevos elementos que descubrir. La gran novedad de esta actualización son los puntos que tienes asignados , con los que puedes  conseguir pistas sobre los elementos que no has abierto todavía como: Conseguir un subelemento de un elemento, con 100 puntos . Conseguir el grupo de un subelemento de un elemento (qué lío , jeje), con 35 puntos . Me gusta, me gusta el enfoque de esta nueva versión aunque los elementos que han sacado me parecen poco originales. Parece que se van agotando las ideas para los elementos nuevos. Aquí van las soluciones: Carbon = Tierra + Turba Sol = Estrella + Tierra Espacio = 3 x Estrella Estrella = Helio + Hidrógeno Oso Pa...

Alchemy Classic

Dentro de los juegos que he descargado con el Android Market hay dos que destacan sobre todos los demás. El primero es Angry Birds (pájaros furiosos), en el cual comandas un ejercito de pájaros para luchar con una piara de cerdos malotes los cuales han robado sus huevos. Básicamente, tienes que ir pasando nivel tras nivel afinando tu puntería lanzando los pájaros a los cerdos que se esconden tras maderas, cristales y piedras. Pero la verdadera joya que no es tan conocida es Alchemy Classic . En este juego puedes desempeñar el papel  de Dios. Comenzando con 4 elementos básicos, Aire, Agua, Tierra y Fuego tienes que ir obteniendo todos los demás elementos de la creación (animales, plantas, herramientas...) mediante la combinación de los 4 primeros. En total hay 238 elementos. Después de una semana y alguna noche sin dormir por fin los he obtenido todos. El último elemento me ha llevado más de la cuenta por su maravillosa traducción. ¿Qué son abrojos? ¿Lo sabéis? Pues no, ...