04_consumo de un web service en java (1)

16
CREACION DE UN WEB SERVICE EN JAVA Ing. Roger E. Alarcón García CONSUMO DE UN WEB SERVICE EN JAVA UTILIZANDO APLICACIÓN WEB Servicio Web Gratuito de Conversión de Temperaturas de Celsius a Fahrenheit y viceversa. http://www.w3schools.com/webservices/ tempconvert.asmx 1

Upload: hernanyovera

Post on 11-Sep-2015

222 views

Category:

Documents


4 download

DESCRIPTION

java

TRANSCRIPT

CREACION DE UN WEB SERVICE EN JAVAIng. Roger E. Alarcn GarcaCONSUMO DE UN WEB SERVICE EN JAVA UTILIZANDO APLICACIN WEBServicio Web Gratuito de Conversin de Temperaturas de Celsius a Fahrenheit y viceversa.http://www.w3schools.com/webservices/tempconvert.asmx

http://www.w3schools.com/webservices/tempconvert.asmx?WSDL

Paso 1: Crear una Aplicacin Web

New Web ApplicationProject Name : ClienteWS04Project Location: Especifica el directorio donde crear la aplicacinProject Folder: Especifica el nombre de la carpeta del proyecto, corresponde al mismo nombre del proyecto.Pulsar el botn Next

Especificar el Servidor y la versin de Java EE que se utilizar en la construccin de esta aplicacin web.Pulsar Next

En este paso se debe seleccionar si se usar un framework para usarlo en el desarrollo de la aplicacin web. En nuestro caso no seleccionamos ningun framework.A continuacin pulsar el botn Finish y obtenemos lo siguiente:

Paso 2: Programando la Aplicacin Web.El proyecto automticamente generar una pgina jsp por defecto con el nombre de index.jsp el cual visualizar informacin de bienvenida que aparece programado por defecto usando HTML.

Lo que necesitamos ahora desarrollar es la pagina que muestre los controles necesarios para demostrar el uso del servicio web.

Una vez diseada la pgina que solicitar los datos pasamos a agregar una referencia al web service libre. Para ello, File -> new -> Web Service Client. Aqu indicamos en que proyecto se encuentra el web service, en este caso el web service a conectarse ser utilizando la opcin de WSDL URL. A continuacin aparecer en la carpeta Web Service References una nueva referencia al web service. Ahora solo falta consumir el web service desde el Servlet, cuyo cdigo es el siguiente

Paso 3: Incluyendo el Web Service al proyecto

Se debe especificar el archivo WSDL del web service a utilizar, para esto hay tres formas que permite: 1. Project: Un proyecto de web service implementado2. Local File: Buscando un archivo local WSDL3. WSDL URL: Dando la URL del archivo WSDL, en este caso por ser un web service libre utilizaremos esta opcin y especificaremos el URL.Utilizando la opcin WSDL URL. Especificamos la URL que contiene el archivo wsdl.http://www.w3schools.com/webservices/tempconvert.asmx?WSDLY para finalizar asignamos un nombre al paquete (WS) donde se generar todos los artefactos clientes de java. Pulsar el botn FinishSe ha incluido lo necesario para manipular el Web Service

Esto permitir generar las clases dentro de la aplicacin Ahora si podemos invocar a cualquier mtodo del Web Service, simplemente arrastrando el mtodo hacia la zona de cdigo o implementado el cdigo propio de invocacin del mtodo ubicado en Web Service References.

Paso 4: Programando el ServletAhora incluiremos un Servlet para que capture los datos enviados por el formulario de la pagina jsp y los procese. Para esto seleccionamos el paquete creado y pulsamos botn secundario New -> Servlet.

Se le asigna el nombre: ClienteServlet este nombre debe coincidir con el texto asignado en la propiedad action del formulario en la pgina web (index.jsp)

Pulsar FinishProgramando en el servlet dentro de la zona try

En la lnea 35 utilizando el request se obtiene el valor del control txtCant que estaba en el formulario convirtindolo a entero y asignndolo a la variable local cant. Tambin se extrae mediante otro request el tipo de temperatura seleccionado en el combo.

Ahora incluyendo a nivel de programacin el servicioLa manera ms fcil es arrastrar y soltar la funcionalidad que se desee utilizar del web service. Por ejemplo del Web Service References, elegir TempConvertSoap y aparecern dos funcionalidades:

Arrastrar a la zona de cdigo del servlet la operacin CelsiusToFahrenheit, esto generar el siguiente cdigo en el servlet.

Lo mismo hacer con la operacin FahrenheitToCelsius.

Ahora si programando cada funcionalidad utilizando los mtodos del web service invocado, en lneas posteriores a la captura de la cantidad y el tipo de grado seleccionado del formulario.

Ahora si ya culminada nuestra aplicacin la ejecutamos.

Resultado de la conversin

Resultado de la conversin

14