8
Por: Héctor Garduño Real Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST 01 de febrero de 2015 Página 1 de 8 Manual de creación de WSDL y uso de un SOA Web Service usando un WSDL 1. CREACIÓN DE UN ARCHIVO WSDL Web Service Description Language (WSDL) es un archivo creado usando lenguaje XML con el fin de describir un servicio web y las ope- raciones que puede negociar, con el fin de que cualquier otra aplicación lo entienda y pueda hacer peticiones. Crear un WSDL para un servicio web desarrollo desde Net- Beans es bastante fácil, simplemente se debe dar clic derecho en el ser- vicio web y en el menú contextual desplegado elegir la opción “Gene- rate and Copy WSDL…, lo cual abrirá un cuadro de dialogo para in- dicar la ubicación en donde será copiado el archivo wsdl. Lo ideal es ubicar este archivo en el directorio raíz del sitio web para que así sea más fácil de localizar por los clientes, en este caso debe elegirse la ubi- cación “web”. Si se visualiza el archivo wsdl que ha generado el API JAX-WS, se mostrará la estructura XML como la que se muestra a continuación acompañado del XML Schema. Pantalla 1. Generar un WSDL Pantalla 2. Elegir ruta del wsdl Pantalla 3. Archivos creados Pantalla 4. Generación exitosa del WSDL

Manual de creación de WSDL y manual de uso de un SOA Web Service usando su WSDL

Embed Size (px)

Citation preview

Page 1: Manual de creación de WSDL y manual de uso de un SOA Web Service usando su WSDL

Por: Héctor Garduño Real

Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST

01 de febrero de 2015 Página 1 de 8

Manual de creación de WSDL y uso de un SOA

Web Service usando un WSDL

1. CREACIÓN DE UN ARCHIVO WSDL

Web Service Description Language (WSDL) es un archivo creado

usando lenguaje XML con el fin de describir un servicio web y las ope-

raciones que puede negociar, con el fin de que cualquier otra aplicación

lo entienda y pueda hacer peticiones.

Crear un WSDL para un servicio web desarrollo desde Net-

Beans es bastante fácil, simplemente se debe dar clic derecho en el ser-

vicio web y en el menú contextual desplegado elegir la opción “Gene-

rate and Copy WSDL…”, lo cual abrirá un cuadro de dialogo para in-

dicar la ubicación en donde será copiado el archivo wsdl. Lo ideal es

ubicar este archivo en el directorio raíz del sitio web para que así sea

más fácil de localizar por los clientes, en este caso debe elegirse la ubi-

cación “web”.

Si se visualiza el archivo wsdl que ha generado el API JAX-WS, se mostrará la estructura XML

como la que se muestra a continuación acompañado del XML Schema.

Pantalla 1. Generar un WSDL

Pantalla 2. Elegir ruta del wsdl Pantalla 3. Archivos creados Pantalla 4. Generación exitosa del WSDL

Page 2: Manual de creación de WSDL y manual de uso de un SOA Web Service usando su WSDL

Por: Héctor Garduño Real

Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST

01 de febrero de 2015 Página 2 de 8

Pantalla 5. Archivo wsdl de un servicio web

Pantalla 6. Archivo xsd con el Schema para validar la estructura del wsdl

Page 3: Manual de creación de WSDL y manual de uso de un SOA Web Service usando su WSDL

Por: Héctor Garduño Real

Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST

01 de febrero de 2015 Página 3 de 8

2. USO DE UN SERVICIO WEB REMOTO CON SOAP + WSDL

Para la realización de este manual se hará uso de un servicio web llamado “CurrencyConvertor” que

devuelve la tasa de cambio actual de una amplia variedad de monedas, el servicio web se encuentra

disponible en http://www.webservicex.net/CurrencyConvertor.asmx. Haciendo uso de él, se creara

una calculadora que haga la conversión de una cifra de dinero.

2.1. Creación del nuevo proyecto

Una vez abierto NetBeans se

debe crear un nuevo proyecto el

cual contendrá el sitio web de la

aplicación y el servicio web.

Para ello se debe dirigir al menú

superior y dar clic en “File”,

posteriormente dar clic en “New

Project…” lo cual abrirá un cua-

dro de diálogo.

Ya que lo que se pretende es

usar un servicio web, al crear el

proyecto, en el primer paso

(Elección del proyecto) se debe

elegir la categoría “Java Web” y del lado derecho, en

tipos de proyectos seleccionar “Web Application”. Una

vez hecho esto es necesario dar clic en el botón [Next]

para continuar con el proceso.

El segundo paso solicitará el nombre del pro-

yecto que se le designará al proyecto, en este caso se

nombrará como “CalculadoraDeDivisas.com”. Opcio-

nalmente se puede definir otra ubicación para guardar el

proyecto usando el botón [Browse…], teniendo en

cuenta el cambio de ruta no afectará al proyecto. Así

mismo, al invocar el servicio web se producirán depen-

dencias de librerías, y en caso de que se deseen ubicarlas

en una carpeta en específico habrá que activar e indicar

la ubicación para almacenarlas. Una vez definidos los

parámetros deberá darse clic en el botón [Next >].

El tercer paso se debe definir el servidor sobre

el que se ejecutará el servicio web así como la versión

de Java EE que se desee usar para el desarrollo. Si se

emplea la última versión de NetBeans se pueden em-

plear los valores por defecto, es decir, servidor web

“GlasFish Server 4.1” y la plataforma “Java EE 7 Web” y dar clic en el botón [Next >].

Pantalla 7. Creación de un nuevo proyecto

Pantalla 8. Elección de tipo de proyecto a crear

Pantalla 9. Nombrado y localización del proyecto

Page 4: Manual de creación de WSDL y manual de uso de un SOA Web Service usando su WSDL

Por: Héctor Garduño Real

Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST

01 de febrero de 2015 Página 4 de 8

En el cuarto y último paso se debe indicar si se

desea emplear un framework para el desarrollo del pro-

yecto, pero ya que este manual aborda un ejemplo bá-

sico, no es necesario hacer la selección de ninguno de

ellos, con lo cual se puede dar clic en el botón [Finish]

para que comience la generación del proyecto, es decir,

la estructura de carpetas y archivos esenciales necesarios

del proyecto. Una vez finalizada la creación del pro-

yecto, deberá aparecer el proyecto recién creado en el

panel izquierdo dentro de la pestaña “Projects”.

2.2. Enlazar el proyecto con un servicio web remoto

Para hacer uso de un servicio web serán necesario

enlazarlo, para lo cual se debe dar clic derecho so-

bre el proyecto, posicionarse sobre “New” y luego

dar clic en “Web Service Client…”, si esta opción

no aparece deberá seleccionarse “Other…” y bus-

carse manualmente.

En el nuevo cuadro de diálogo que se abre

deberá elegirse la opción “WSDL URL:” y en el

campo la dirección http://www.webservi-

cex.net/CurrencyConvertor.asmx?WSDL que per-

tenece al servicio web en cuestión. Posteriormente

se debe indicar el nombre del paquete para guardar

las clases requeridas para hacer uso del servicio

web, para este ejemplo se usará como nombre el

mismo nombre del servicio web, es decir “Cu-

rrencyConvertor”, para finalmente dar clic en el

botón [Finish]. Si la vinculación del servicio web se

Pantalla 10. Configuración del entorno

Pantalla 11. Estructura del proyecto recién creado Pantalla 12. Frameworks del nuevo proyecto

Pantalla 13. Creación de nuevo servicio web cliente

Pantalla 14. Definiendo el servicio web que se usará

Page 5: Manual de creación de WSDL y manual de uso de un SOA Web Service usando su WSDL

Por: Héctor Garduño Real

Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST

01 de febrero de 2015 Página 5 de 8

realiza correctamente deberá aparecer en el panel de proyectos los nue-

vos elementos como se muestra en la siguiente imagen.

2.3. Creación de página web JSP

Por defecto el proyecto creará una página web estática con extensión

html que se ubica en “Web Pages”, sin embargo ésta no servirá para

invocar el servicio web, sino que se debe usar una página activa de java

con extensión jsp, la cual permite generar de forma dinámica contenido.

Así pues, para no tener archivos innecesarios, “index.html” será bo-

rrado dando clic derecho sobre él y seleccionando “delete”.

A continuación se creará una página activa de java, para lo cual

se puede dar clic dere-

cho sobre el proyecto,

posicionarse sobre “New” para después dar clic so-

bre “JSP…”. Esto abrirá un cuadro de diálogo para

especificar el nombre del nuevo archivo, el cual se

nombrará como “index” con el fin de que sea la pá-

gina de inicio. Se usaran las opciones por defecto por

lo que no se seleccionara otra carpeta y será un “JSP

File”. Posteriormente se dará clic en el botón [Fi-

nish] lo que provocara que se cree el archivo donde

anteriormente se encontraba index.html.

2.4. Creación de la estructura HTML de la página web

Para dar un poco de diseño a la página se usará el siguiente código HTML, el cual es muy básico pero

se busca no saturar este manual con código. Como se puede observar en la siguiente hoja, se han

reservado dos espacios, uno para el diseño usando CSS y otro para el Servicio Web. Adicionalmente

se omitieron muchas divisas para visualizar un código más corto.

Pantalla 15. Vinculación co-

rrecta del servicio web

Pantalla 16. Crear una página JSP

Page 6: Manual de creación de WSDL y manual de uso de un SOA Web Service usando su WSDL

Por: Héctor Garduño Real

Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST

01 de febrero de 2015 Página 6 de 8

Pantalla 17. Código HTML de la página web cliente

Este código debería visualizar una página similar a la siguiente.

Pantalla 18. Página web con solamente HTML

2.5. Incrustar y configurar el servicio web en la página JSP

Ya que se ha reservado un espacio a partir de la

línea de código 26, ahí será donde incrustará el

código Java que se encargará de realizar la ne-

gociación con el servicio web. Para incrustar el

servicio web solo hará falta expandir el panel

del proyecto hasta llegar al método deseado,

una vez ubicado, arrastrarlo a la línea de código

deseada para que se genere el código automáti-

camente. Pantalla 19. Arrastrar soltar el método en la línea deseada

Page 7: Manual de creación de WSDL y manual de uso de un SOA Web Service usando su WSDL

Por: Héctor Garduño Real

Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST

01 de febrero de 2015 Página 7 de 8

El código generado automáticamente debería ser el siguiente

Pantalla 20. Código generado automáticamente al insertar el método del servicio web

Y el cual ha sido adaptado para tomar los datos del formulario, pasarlos al servicio web y

tomar el resultado para desplegarlo acompañado de unas etiquetas HTML.

Pantalla 21. Código que comunica con el servicio web, pasa los datos y obtiene el resultado

2.6. Agregar diseño a la página

Si se desea agregar un poco de diseño a la página, se deberá agregar en la línea de código 14 reservada

para tal fin el código mostrado a continuación.

Pantalla 22. Estilos CSS para aplicar diseño a la página

Page 8: Manual de creación de WSDL y manual de uso de un SOA Web Service usando su WSDL

Por: Héctor Garduño Real

Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST

01 de febrero de 2015 Página 8 de 8

2.7. Probando la calculadora de divisas

Pantalla 23. Inserción de datos en el formulario

Pantalla 24. Resultado del servicio web ya procesado y maquetado