Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porAdalberto Romero Modificado hace 9 años
1
Presentación Web Services Interoperability and SOAP Keith Ballinger Microsoft Corporation Alvaro Castromán Alfonso Odriozola
2
Desarrollo ¿Qué son Web Services? Introducción a SOAP Contenido del Artículo Trabajos Relacionados Conclusiones
3
¿Qué son Web Services? Colección de funciones empaquetadas como una unidad y publicada en la red Aplicación programable a la que se tiene acceso de forma lógica utilizando los protocolos estándar de Internet
4
¿Qué son Web Services? Capa intermedia entre el código de aplicación y el código de usuario Independiza del lenguaje de implementación
5
¿Qué son Web Services? Tres componentes: Service Listener: lenguaje de transporte (HTTP, SOAP) Service proxy: decodifica solicitudes para el código de aplicación Código de Aplicación
6
¿Qué son Web Services? Provee Just-In-Time Integration Web Service Technology Stack: Discovery (UDDI) Description (WSDL) Packaging (XML / SOAP) Transport (TCP / SMTP / HTTP) Network (idem a OSI)
7
¿Qué son Web Services?
8
Introducción a SOAP Simple Object Access Protocol Provee un mecanismo simple y ligero para intercambio de información estructurada y tipeada en un ambiente descentralizado y distribuido usando XML
9
Introducción a SOAP Puede ser usado desde sistemas de mensajeria hasta RPC Consiste de tres partes: envelope encoding rules RPC representation
10
Introducción a SOAP Envelope: define un marco para expresar qué es un mensaje, quién debería manejarlo, y qué es opcional o no. Los mensajes contienen: Envelope: la raíz del documento XML Header: mecanismo para agregar características a un mensaje SOAP Body: contiene la información obligatoria para el receptor del mensaje
11
Introducción a SOAP Encoding rules: define un mecanismo de serialización para intercambiar instancias de tipos de datos definidos por aplicaciones RPC representation: define una convensión para representar llamadas y respuestas a procedimientos remotos
12
SOAP Request example POST /test/simple.asmx HTTP/1.1 Host: 131.107.72.13 Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "http://soapinterop.org/echoString" Hola Mundo
13
SOAP Responce example: HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 Content-Length: length <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema“ xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://soapinterop.org/“ xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> Hola Mundo
14
Contenido del Artículo Ofrece una introducción a los problemas de interoperabilidad relativos a las llamadas RPC con SOAP Tres problemas de interoperabilidad: HTTP XML SOAP
15
Contenido del Artículo Actualidad: plataformas heterogéneas para la creación de aplicaciones utilizando sus propios protocolos disponen de una capacidad limitada para compartir datos
16
Contenido del Artículo Tendencia: estándares para los formatos y el intercambio de datos evolución rápida hacia un nuevo paradigma informático perfecta integración de Web Services entre las barreras de hardware y software.
17
Contenido del Artículo Ej. problemas de transporte (HTTP): encabezado HTTP SOAPAction SOAPAction: “http://tempuri.org/” SOAPAction: no todas las API cliente HTTP permiten establecer un valor nulo en un encabezado HTTP
18
Contenido del Artículo Soluciones: reparar los API cliente asegurarse de que los servidores no requieran un valor nulo Una forma de evitar estos problemas: asegurase de que la API HTTP utilizada sea sólida y ya conocida para trabajar en el Web
19
Contenido del Artículo Ej. problemas de XML: Byte Order Mark (BOM) especificación de la codificación de los datos HTTP: en el encabezado Content-Type XML: insertando un conjunto de bytes que especifiquen la codificación en UTF-16 se necesita el BOM, incluso si está presente el Content-Type en UTF-8 no es obligatorio
20
Contenido del Artículo Algunas implementaciones envian la marca BOM para UTF-8 (esto es opcional) Otras no pueden procesar XML sin BOM
21
Contenido del Artículo La solución en este caso consiste en evitar el envio, a menos que sea necesario El manejo correcto de BOM resulta esencial en el procesamiento de mensajes UTF-16 La mejor solución una vez reconocidos los problemas consiste en hacer referencia a las especificaciones reales
22
Contenido del Artículo Ej. problemas de SOAP: si recibe un encabezado SOAP con un atributo mustUnderstand establecido como “1”, deberá entenderlo o generar un error numerosas implementaciones no lo hicieron al principio
23
Contenido del Artículo Ejemplo de mustUnderstand: ¡Hola!
24
Temas Relacionados Problemas en Apache SOAP: Transporte: los APIs Apache SOAP del lado del cliente no tienen dificultad en generar valore null en SOAPAction XML: si está codificado en UTF-8 e incluye un BOM la solicitud fallará al usar Apache Xerces otro problema está relacionado con XML Schema, hoy en día hay tres versiones
25
Temas Relacionados SOAP: no implementa el concepto de cabecera mustUnderstand de SOAP Dependiendo de xsi:type: todo valor tipado debe ser explicitamente tipado en el envelope usando el atributo xsi:type Apache SOAP no proporciona soporte para retornar más de un valor ya que se van más allá del ámbito de Java
26
Conclusiones Se presenta una introducción práctica a problemas actuales de interoperabilidad con SOAP RPC Puntos fuertes: división de problemas en tres tipos es preciso en su enfoque Puntos débiles: es poco profundo en los temas tratados menciona pocos problemas
27
Conclusiones Los objetivos planteados fueron alcanzados Contribuciones: informa que existen estos tres tipos de problemas Los artículos futuros tratarán: transmisión de mensajes del estilo "document" SOAP a través de SMTP y otros transportes WSDL y varias pruebas de encabezado SOAP
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.