11.- servicios web xml

19
Crear y consumir Servicios Web XML

Upload: salvadormanuelfernandezmiranda

Post on 30-Nov-2015

18 views

Category:

Documents


0 download

TRANSCRIPT

Crear y consumir Servicios Web XML

Descripción

Introducción al uso de servicios Web XML

Invocar un servicio Web XML utilizando HTTP

Utilizar un proxy para invocar un servicio Web XML

Crear un servicio Web XML

Lección: descripción del uso de servicios Web XML

¿Qué es un servicio Web XML?

¿Por qué utilizar servicios Web XML?

Buscar un servicio Web XML

Multimedia: modelo de ejecución del servicio Web XML

¿Qué es un servicio Web XML?

Lógica programable accesible por protocolos Web estándares

Permite a las aplicaciones enviar y recibir información a través de Internet

Independiente de lenguaje, protocolo y plataforma

Arquitectura sin estado

Puede ser asíncrono

Basado en un estándar W3C en desarrollo

¿Por qué utilizar los servicios Web XML?

InternetInternet

Servicio Web XML meteorológico

Servicio Web XML meteorológico

Servicio Web XMLtipo de cambio

Servicio Web XMLtipo de cambio

Seleccionar destino:

La previsiónmeteorológica es:

El tipo de cambio es:

El billete de avión sólo cuesta:

LluviaLluvia

Redmond

$1.56

$1,999.98

Base de datos deprecios de billetesBase de datos deprecios de billetes

Servicio Web XMLprecio del billete

Servicio Web XMLprecio del billete

Sitio de viajesNorthwind TradersSitio de viajesNorthwind Traders

Publicar la URL del servicio Web XML y su descripción

Buscar un servicio Web XML

.disco

.wsdl

Servicio WebProxyProxy

WebForm

UDDI

11112222

3333

4444

5555 6666

1111

2222

3333

4444

5555

Descubrir el servicio Web XML

Localizar la URL del servicio Web XML

Leer la descripción .wsdl

Vincular el servicio Web XML al proxy

Invocar el servicio Web XML desde el formulario Web FormMediante el proxy

6666

Lección: invocar un servicio Web XML mediante HTTP

Cómo invocar un servicio Web XML mediante HTTP

Práctica: invocar un servicio Web XML mediante HTTP

Cómo invocar un servicio Web XML utilizando HTTP

1. Ir a la URL del servicio Web XML

2. Seleccionar un método delservicio Web XML

3. Invocar el método del servicio Web XML

4. Ver la respuesta XML

1111

2222

3333

4444

Práctica: invocar un servicio Web XML utilizando HTTP

Los estudiantes:

Introducirán la URL de un servicio Web XML en el equipo del instructor

Seleccionarán el método del servicio Web XML para invocar

Introducirán valores para los parámetros

Visualizarán el XML devuelto

Tiempo: 5 Minutos

Lección: Utilizar un proxy para invocar un servicio Web XML

Utilizar proxies para invocar servicios Web XML

Cómo utilizar un proxy para invocar un servicio Web XML

Práctica dirigida por el instructor: utilizar un proxy para invocar un servicio Web XML

Controlador de errores del servicio Web XML

Demostración: probar la disponibilidad de un servicio Web XML

Utilizar proxies para invocar servicios Web XML

Parecen idénticos que la clase original, pero no contienen la lógica de la aplicación

Utilizan SOAP para interactuar con el servicio Web XML

Se crean desde el archivo NombreServicio.asmx.wsdl

Agregan miembros para gestionar interacciones con el servicio Web XML o soportar llamadas asíncronas

InternetInternet Servicio Web XML Servicio

Web XML

ProxyProxy

WebForm

SOAP

Cómo utilizar un proxy para invocar un servicio Web XML

1. Crear una referencia Web para el servicio Web XML

2. Crear una instancia del servicio Web XML

3. Invocar los métodos Web del servicio Web XML

4. Generar la aplicación Web ASP.NET

Sub Button1_Click(s As Object, e As EventArgs)...Dim ProxyGetStocks As New _ GetStocks.localhost.Service1()lblResults.Text = _

ProxyGetStocks.GetRating("Contoso")End Sub

Sub Button1_Click(s As Object, e As EventArgs)...Dim ProxyGetStocks As New _ GetStocks.localhost.Service1()lblResults.Text = _

ProxyGetStocks.GetRating("Contoso")End Sub

1111

2222

3333

4444

Código de ejemplo en C#

Práctica dirigida por el instructor: utilizar un Proxy para invocar un servicio Web XML

Crear un nuevo proyecto de aplicación Web ASP.NET

Crear un proxy para un servicio Web XML

Probar con un navegador

Visualizar el archivo reference.vb o reference.cs

Control de errores del servicio Web XML

Servicio no disponible

Excepciones SOAP de servicios Web XML

GetStocks.StockWebRef.Service1 ProxyGetStocks = new GetStocks.StockWebRef.Service1();

ProxyGetStocks.Timeout = 10000;try{ lblMessage.Text =

ProxyGetStocks.GetRating(TextBox1.Text);}catch (Exception err){ lblMessage.Text = err.Message;}

GetStocks.StockWebRef.Service1 ProxyGetStocks = new GetStocks.StockWebRef.Service1();

ProxyGetStocks.Timeout = 10000;try{ lblMessage.Text =

ProxyGetStocks.GetRating(TextBox1.Text);}catch (Exception err){ lblMessage.Text = err.Message;}

Código de ejemplo en Visual Basic .NET

Demostración: probar la disponibilidad de un Servicio Web XML

Establecer una instrucción Try…Catch para el control de errores del tiempo de espera

Ralentizar el servicio Web

Evaluar la excepción

Lección: crear un servicio Web XML

Cómo crear un servicio Web XML

Código del servicio Web XML

Práctica dirigida por el instructor: crear un servicio Web XML

Cómo crear un servicio Web XML

1. Crear un nuevo proyecto de servicio Web XML en Visual Studio .NET

2. Declarar las funciones WebMethod

3. Generar el proyecto de servicio Web XML

4. Probarcon unnavegador

1111

2222

3333

4444

Código del servicio Web XML

Página .asmx

Página .asmx.vb

<%@ WebService Language="vb" Codebehind="Service1.asmx.vb" Class="XMLWebServiceName.Service1" %>

<%@ WebService Language="vb" Codebehind="Service1.asmx.vb" Class="XMLWebServiceName.Service1" %>

Imports SystemImports System.Web.Services

Class Service1<WebMethod()> Public Function function1() As

type'function_here

End FunctionEnd Class

Imports SystemImports System.Web.Services

Class Service1<WebMethod()> Public Function function1() As

type'function_here

End FunctionEnd Class

Código de ejemplo en C#

Práctica dirigida por el instructor: crear un servicio Web XML

Crear un servicio Web XML

Probar el servicio Web XML

Cambiar el espacio de nombres