Está en la página 1de 18

SOAP v1.1 SOAP v1.

1
Protocolo Simple de Acceso a Objetos Protocolo Simple de Acceso a Objetos

Prof. Cosimo Stufano Prof. Cosimo Stufano

INTRODUCCIN
Ingenieros de software rechazan el uso de tecnologas que no sean de su preferencia Se crea una adecuado de heterogneo polaridad que hace difcil alcanzar interoperabilidad entre sistemas de un nivel software

Sera muy til encontrar una tecnologa estandarizada sobre la cual se pusieran de acuerdo para crear mecanismos de integracin Una posible solucin a este problema es considerar tecnologas simples y populares (e.g. HTTP y XML) El Protocolo Simple de Acceso a Objetos (SOAP, Simple Object Access Protocol) surge con esta orientacin

BREVE RESEA
A principios de 1999:
Un grupo de investigadores e ingenieros de Microsoft Corporation, DevelopMentor y UserLand Software comenzaron el desarrollo del Protocolo Simple de Acceso a Objetos (SOAP, Simple Object Access Protocol)

A finales de 1999:
Fue sometido a consideracin un borrador de la especificacin de SOAP version 1.0 ante la Internet Engineering Task Force (IETF) Se incorporan al grupo de desarrollo representantes de las empresas IBM y Lotus Development Corporation

En mayo del 2000:


Se somete a consideracin del World Wide Web Consortium (W3C) la versin 1.1 de la especificacin de SOAP con la finalidad de promover la formacin de un grupo de trabajo en el rea de protocolos basados en XML (eXtensible Markup Language)

QU ES SOAP? QU ES SOAP?
SOAP es un protocolo ligero basado en XML (eXtensible Markup Language) para el intercambio de informacin en un ambiente descentralizado y distribuido. Consiste en tres partes:
Un envoltorio que sirve de contenedor del mensaje, describe el contenido del mensaje e indica cmo procesarlo Un conjunto de reglas de codificacin para expresar tipos de datos definidos Una convencin para representar llamadas y respuestas a procedimientos remotos

Su propsito es satisfacer las necesidades de desarrolladores de sistemas de procesamiento distribuido que encuentran difcil la utilizacin de otras tecnologas existentes (e.g. CORBA y DCOM)

QU ES SOAP? QU ES SOAP?
SOAP permite que objetos de un programa, ejecutndose en una plataforma computacional invoquen mtodos de objetos remotos de otro programa que puede estarse ejecuntando en una plataforma diferente SOAP emplea:
El Lenguaje Extensible de Marcas (XML, eXtensible Markup Language) para definir la estructura del mensaje El Protocolo de Transferencia de Hipertexto (HTTP, Hypertext Transfer Protocol) del World Wide Web como medio de transporte

SOAP

XML

HTTP/SMTP TCP/IP

QU ES SOAP? QU ES SOAP?

A pesar de que la especificacin slo define su utilizacin con HTTP, puede ser utilizado en combinacin con una variedad de protocolos. (e.g. SMTP implementado por IBM-SOAP 1.2 for Java) En cierto sentido, SOAP es similar a IIOP (Internet Inter-ORB Protocol), parte fundamental de CORBA y a RMI (Remote Method Invocation) de Java Una de las ventajas ms importantes de SOAP es su inmunidad a las barreras de seguridad (firewalls)

CONSIDERACIONES DE DISEO

La simplicidad y extensibilidad son las carcatersticas ms importante de SOAP Algunas caractersticas tradicionales de los sistemas de pase de mensajes y de objetos distribuidos no forman parte de la especificacin bsica de SOAP. Entre estas tenemos:
Recolector distribuido de desechos (Distributed garbage collection) Manejo de mensajes por lotes (Boxcarring or batching of messages) Objetos por referencias (Objects-by-reference) Activacin

MODELO DE INTERCAMBIO DE MENSAJES

Los mensajes SOAP tienen un solo sentido (del emisor al receptor) y pueden ser combinados para implementar patrones tales como de solicitud y respuesta SOAP permite el procesamiento en uno o ms nodos intermedios antes de llegar a su destino final

MODELO DE INTERCAMBIO DE MENSAJES

El procesamiento de un mensaje SOAP por una aplicacin receptora es como sigue:


Identificar todas las partes del mensaje SOAP relacionadas con la aplicacin Verificar que todas las partes identificadas son soportadas por la aplicacin, para luego procesar el mensaje. Si este no es el caso se descarta el mensaje. El procesador puede ignorar partes del mensaje que no afecten su procesamiento Si la aplicacin SOAP no es el destinatario final del mensaje, remueve todas las partes identificadas en el paso 1 y es posteriormente retransmitido al siguiente nodo especificado en la etransmitido al siguiente nodo especificado en la
ruta del mensaje ruta del mensaje

RELACIN CON XML

Todos los mensajes SOAP estn codificados utilizando XML SOAP define dos espacios de nombres:
Envoltorio SOAP: http:// schemas.xmlsoap.org/soap/envelope/ Serializacin SOAP: http://schemas.xmlsoap.org/soap/encoding/

Un mensaje SOAP no debe contener una Declaracin de Tipo de Documento (DTD, Document Type Declaration) ni Instrucciones de Procesamiento (Processing Instructions)

COMPONENTES DE UN MENSAJE SOAP

Un mensaje SOAP es un documento XML conformado por:


Un Envoltorio (Envelope): es la raz del documento XML que representa el mensaje Un Encabezado opcional (Header): constituye un mecanismo genrico para agregarle caractersticas a un mensaje SOAP El Cuerpo del Mensaje (Body): es el contenedor de la informacin de inters para la aplicacin receptora del mensaje

COMPONENTES DE UN MENSAJE SOAP SOLICITUD


POST /StockQuote HTTP/1.1 POST /StockQuote HTTP/1.1 Host: www.stockquoteserver.com Host: www.stockquoteserver.com Content-Type: text/xml; charset="utf-8" Content-Type: text/xml; charset="utf-8" Content-Length: nnnn Content-Length: nnnn SOAPAction: "http://electrocommerce.org/abc#MyMessage" SOAPAction: "http://electrocommerce.org/abc#MyMessage"

Encabezado HTTP Encabezado HTTP

<SOAP-ENV:Envelope <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> <SOAP-ENV:Header> <SOAP-ENV:Header> <t:Transaction <t:Transaction xmlns:t="some-URI" SOAP-ENV:mustUnderstand="1"> xmlns:t="some-URI" SOAP-ENV:mustUnderstand="1"> 5 5 </t:Transaction> </t:Transaction> </SOAP-ENV:Header> </SOAP-ENV:Header> <SOAP-ENV:Body> <SOAP-ENV:Body> <m:GetLastTradePrice xmlns:m="Some-URI"> <m:GetLastTradePrice xmlns:m="Some-URI"> <symbol>DEF</symbol> <symbol>DEF</symbol> </m:GetLastTradePrice> </m:GetLastTradePrice> </SOAP-ENV:Body> </SOAP-ENV:Body> </SOAP-ENV:Envelope> </SOAP-ENV:Envelope>

Envoltorio SOAP Envoltorio SOAP

Encabezado SOAP

Cuerpo del Mensaje SOAP

COMPONENTES DE UN MENSAJE SOAP RESPUESTA EXITOSA

HTTP/1.1 200 OK HTTP/1.1 200 OK Content-Type: text/xml; charset="utf-8" Content-Type: text/xml; charset="utf-8" Content-Length: nnnn Content-Length: nnnn

Encabezado HTTP Encabezado HTTP

<SOAP-ENV:Envelope <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> <SOAP-ENV:Body> <SOAP-ENV:Body> <m:GetLastTradePriceResponse xmlns:m="Some-URI"> <m:GetLastTradePriceResponse xmlns:m="Some-URI"> <Price>43.6</Price> <Price>43.6</Price> </m:GetLastTradePrice> </m:GetLastTradePrice> </SOAP-ENV:Body> </SOAP-ENV:Body> </SOAP-ENV:Envelope> </SOAP-ENV:Envelope>

Envoltorio SOAP Envoltorio SOAP

Cuerpo del Mensaje SOAP

COMPONENTES DE UN MENSAJE SOAP FALLA EN LA RESPUESTA


HTTP/1.1 200 OK HTTP/1.1 200 OK Content-Type: text/xml; charset="utf-8" Content-Type: text/xml; charset="utf-8" Content-Length: nnnn Content-Length: nnnn

Encabezado HTTP Encabezado HTTP

<SOAP-ENV:Envelope <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> <SOAP-ENV:Body> <SOAP-ENV:Body> <SOAP-ENV:Fault> <SOAP-ENV:Fault> <faultcode> <faultcode> Client.Authentication Client.Authentication </faultcode> </faultcode> <faultstring> <faultstring> Authentication Error. Authentication Error. </faultstring> </faultstring> <faultactor>Some-URI</faultactor> <faultactor>Some-URI</faultactor> <detail>Some details</detail> <detail>Some details</detail> </SOAP-ENV:Fault> </SOAP-ENV:Fault> </SOAP-ENV:Body> </SOAP-ENV:Body> </SOAP-ENV:Envelope> </SOAP-ENV:Envelope>

Envoltorio SOAP Envoltorio SOAP

Cuerpo del Mensaje SOAP

ESTILO DE CODIFICACIN

Sistema simple de codificacin, basado en XML, producto de la generalizacin de caractersticas comunes encontradas en los tipos de datos presentes en lenguajes de programacin, base de datos y data semi-estructurada Existen dos categoras de tipos de datos: simples y compuestos El identificador de espacio de nombres para los elemento y atributos definidos en la especificacin de SOAP es "http://schemas.xmlsoap.org/soap/encoding/" El uso del modelo de datos y estilo de codificacin es recomendado por la especificacin de SOAP pero no es de carcter obligatorio; otros modelo de datos y estilos de codificacin pueden ser empleados con SOAP

TIPOS DE DATOS SIMPLES


SOAP adopta como tipos de datos simples los especificados para XML en la seccin "Built-in Datatypes" del documento "XML Schema Part 2: Datatypes". Estos son:
Tipos de Datos Primarios: string, boolean, float, double, decimal, timeDuration, recurringDuration, binary, uriReference, ID, IDREF, ENTITY y Qname Tipos de Datos Derivados: CDATA, token, language, IDREFS, ENTITIES, NMTOKEN, NMTOKENS, Name, NCName, NOTATION, integer, nonPositiveInteger, negativeInteger, long, int, short, byte, nonNegativeInteger, unsignedLong, unsignedInt, unsignedShort, unsignedByte, positiveInteger, timeInstant, time, timePeriod, date, month, year, century, recurringDate y recurringDay

EJEMPLOS DE TIPOS DE DATOS SIMPLES

Esquema:
<element name="age" type="int"/> <element name="age" type="int"/> <element name="height" type="float"/> <element name="height" type="float"/> <element name="displacement" type="negativeInteger"/> <element name="displacement" type="negativeInteger"/> <element name="color"> <element name="color"> <simpleType base="xsd:string"> <simpleType base="xsd:string"> <enumeration value="Green"/> <enumeration value="Green"/> <enumeration value="Blue"/> <enumeration value="Blue"/> </simpleType> </simpleType> </element> </element>

Data:
<age>45</age> <age>45</age> <height>5.9</height> <height>5.9</height> <displacement>-450</displacement> <displacement>-450</displacement> <color>Blue</color> <color>Blue</color>

TIPOS DE DATOS COMPUESTOS

SOAP define tipos de datos compuestos correspondientes a patrones estructurales presentes con frecuencia en lenguajes de programacin. Estos son:
Estructuras Arreglos

Los tipos de datos compuestos a su vez pueden contener tipos de datos compuestos La especificacin de SOAP no limita la serializacin de otros tipos de datos compuestos

EJEMPLOS DE TIPOS DE DATOS COMPUESTOS


Estructura (Struct)
Una estructura es un tipo de datos compuesto en la cual los Una estructura es nombres de acceso de sus valores miembros es la nica nombres de acceso distincin entre ellos distincin entre ellos
Esquema: Esquema:
<element name="Book"> <element name="Book"> <complexType> <complexType> <element name="title" type="xsd:string"/> <element name="title" type="xsd:string"/> <element name="author" type="xsd:string"/> <element name="author" type="xsd:string"/> <element name="preface" type="xsd:string"/> <element name="preface" type="xsd:string"/> <element name="intro" type="xsd:string"/> <element name="intro" type="xsd:string"/> </complexType> </complexType> </e:Book> </e:Book>

Una estructura de tipo Book: Una estructura de tipo Book:


<e:Book> <e:Book> <title>XML by Example</title> <title>XML by Example</title> <author>Benot Marchal</author> <author>Benot Marchal</author> <preface>Prefatory text</preface> <preface>Prefatory text</preface> <intro>This is a book</intro> <intro>This is a book</intro> </e:Book> </e:Book>

EJEMPLOS DE TIPOS DE DATOS COMPUESTOS

Arreglo (Array)
Un arreglo es un tipo de dato compuesto donde la posicin de Un arreglo es un tipo de dato compuesto donde la posicin de sus miembros sirve como nica distincin entre ellos. Los sus miembros sirve arreglos SOAP estn definidos como "SOAP-ENC:Array". arreglos SOAP
Esquema: Esquema:
<element name="myFavoriteNumbers" type="SOAP-ENC:Array"/> <element name="myFavoriteNumbers" type="SOAP-ENC:Array"/>

Un arreglo de dos enteros: Un arreglo de dos enteros:


<myFavoriteNumbers SOAP-ENC:arrayType="xsd:int[2]"> <myFavoriteNumbers SOAP-ENC:arrayType="xsd:int[2]"> <number>3</number> <number>3</number> <number>4</number> <number>4</number> </myFavoriteNumbers> </myFavoriteNumbers>

10

EJEMPLOS DE TIPOS DE DATOS COMPUESTOS


Arreglo (Array)
Los miembros de un arreglo pueden ser de cualquier tipo que sea sustituto del Los miembros de un arreglo pueden ser de cualquier tipo que sea sustituto del tipo de dato especificado en el atributo arrayType tipo de dato especificado en el atributo arrayType Puesto que el tipo SOAP-ENC:Array admite miembros de cualquier tipo, mezclas Puesto que el tipo SOAP-ENC:Array admite miembros de cualquier tipo, mezclas de tipos arbitrarias de tipos pueden estar contenidas en arreglos de tipos arbitrarias de tipos pueden estar contenidas en arreglos Por ejemplo: Por ejemplo:
<SOAP-ENC:Array SOAP-ENC:arrayType="xsd:ur-type[4]"> <SOAP-ENC:Array SOAP-ENC:arrayType="xsd:ur-type[4]"> <SOAP-ENC:int>12345</SOAP-ENC:int> <SOAP-ENC:int>12345</SOAP-ENC:int> <SOAP-ENC:decimal>6.789</SOAP-ENC:decimal> <SOAP-ENC:decimal>6.789</SOAP-ENC:decimal> <xsd:string> <xsd:string> Of Mans First Disobedience, and the Fruit Of Mans First Disobedience, and the Fruit Of that Forbidden Tree, whose mortal tast Of that Forbidden Tree, whose mortal tast Brought Death into the World, and all our woe, Brought Death into the World, and all our woe, </xsd:string> </xsd:string> <SOAP-ENC:uriReference> <SOAP-ENC:uriReference> http://www.dartmouth.edu/~milton/reading_room/ http://www.dartmouth.edu/~milton/reading_room/ </SOAP-ENC:uriReference > </SOAP-ENC:uriReference > </SOAP-ENC:Array> </SOAP-ENC:Array>

EJEMPLOS DE TIPOS DE DATOS COMPUESTOS


Arreglos Transmitidos Parcialmente (Arreglos Variantes) Arreglo de cinco elementos en el cual slo se transmiten los dos ltimos mediante la especificacin del atributo SOAP-ENC:offset
<SOAP-ENC:Array <SOAP-ENC:Array SOAP-ENC:arrayType="xsd:string[5]" SOAP-ENC:arrayType="xsd:string[5]" SOAP-ENC:offset="[2]"> SOAP-ENC:offset="[2]"> <item>The third element</item> <item>The third element</item> <item>The fourth element</item> <item>The fourth element</item> </SOAP-ENC:Array> </SOAP-ENC:Array>

Arreglos Esparcidos Cada elemento especifica su posicin mediante el atributo SOAPespecifica su posicin mediante el atributo SOAPENC:position
<SOAP-ENC:Array <SOAP-ENC:Array SOAP-ENC:arrayType="xsd:string[5]" > SOAP-ENC:arrayType="xsd:string[5]" > <item SOAP-ENC:position="[1]">The first element</item> <item SOAP-ENC:position="[1]">The first element</item> <item SOAP-ENC:position="[3]">The third element</item> <item SOAP-ENC:position="[3]">The third element</item> </SOAP-ENC:Array> </SOAP-ENC:Array>

11

SOAP SOBRE HTTP

La implementacin de SOAP sobre HTTP permite conjugar la formal y descentralizada flexibilidad de SOAP con las caractersticas de HTTP SOAP sigue naturalmente el modelo de solicitud/respuesta de HTTP incorporando el contenido de una solicitud SOAP en una solicitud HTTP e igualmente el contenido de una respuesta SOAP en una respuesta HTTP Todas las solicitudes y respuestas SOAP deben valor text/xml al encabezado Content-Type reconocidas como tales asignar el para ser

La especificacin slo define el uso del mtodo POST

LLAMADAS A PROCEDIMIENTOS REMOTOS USANDO SOAP


Las llamadas a procedimientos remotos y las respuestas correspondientes son transportadas dentro del elemento Body de un mansaje SOAP Una llamada RPC se mapea naturalmente a una solicitud HTTP y una respuesta RPC se mapea a una respuesta HTTP Para realizar una llamada a un procedimiento remoto es necesario la siguiente informacin:
URI del objeto destino Nombre del mtodo Firma del mtodo (opcional) Parmetros del mtodo Data de encabezado (opcional)

12

LLAMADAS A PROCEDIMIENTOS REMOTOS USANDO SOAP

La representacin de una llamada RPC presenta las siguientes caractersticas:


Es vista como una estructura simple que contiene como elementos parmetros de tipo [in] o [in/out] El nombre y el tipo de la estructura es idntico al nombre del mtodo invocado Cada parmetro es visto como un elemento de la estructura cuyo nombre y tipo corresponde al nombre y tipo del parmetro correspondiente. Los parmetros aparecen en el mismo orden que lo establece la firma del mtodo

LLAMADAS A PROCEDIMIENTOS REMOTOS USANDO SOAP


La representacin de una respuesta RPC presenta las siguientes caractersticas:
Es vista como una estructura simple cuyos elemento corresponden al Es vista como una estructura simple cuyos elemento corresponden al valor de retorno del mtodo y a cada parmetro del tipo [out] o [in/out] valor de retorno del mtodo y a cada parmetro del tipo [out] o [in/out] El primer elemento es el valor de retorno y el resto son los parmetros El primer elemento es el valor de retorno y el resto son los parmetros tipo [out] o [in/out] ordenados de acuerdo a la firma del mtodo tipo [out] o [in/out] ordenados de acuerdo a la firma del mtodo Cada parmetro es visto como un elemento de la estructura cuyo Cada parmetro es visto como un elemento de la estructura cuyo nombre y tipo corresponde al nombre y tipo del parmetro nombre y tipo corresponde al nombre y tipo del parmetro El nombre del valor de retorno no es importante, sin embargo se ha El nombre del valor de retorno no es importante, sin embargo se ha establecido un convencin para nombrar la estructura de retorno, la establecido un convencin para nombrar la estructura de retorno, la cual consiste en agregarle la cadena Response al nombre del cual consiste en agregarle la cadena Response al nombre del mtodo invocado mtodo invocado

Una respuesta SOAP no puede contener un resultado y un elemento Fault en el cuerpo del mensaje

13

RPC Y EL ELEMENTO HEADER

Informacin adicional relevante a la codificacin de la invocacin de un mtodo puede ser expresada dentro del elemento Header, mas no informacin que sea parte de la definicin del mtodo (firma del mtodo)

Como ejemplo del uso de un elemento del Header est el pase de un identificador de transaccin junto al mensaje

CONSIDERACIONES DE SEGURIDAD

La especificacin de SOAP no incluye mtodos que garanticen la integridad y privacidad de los datos Ya que SOAP trabaja sobre HTTP, podra utilizar cualquier caracterstica de seguridad desarrollada para este protocolo, tales como:
SSL (SecureSocketsLayer) y HTTPS (HyperText Trasnfer Protocol Secure)

Se espera que sean incluidas consideraciones de seguridad en futuras versiones

14

INTERFACES DE PROGRAMACIN DE APLICACIONES

Developmentor (http://www.develop.com/soap/)
Disponibles: APIs para Java y Perl En desarrollo: API para C/C++ y COM

IBM (http://www.alphaworks.ibm.com)
Disponible: API para Java

DETALLES OPERACIONALES DE IBM-SOAP V.1.2

Para emplear el API provisto por IBM se requiere los siguientes herramientas de software: Herramientas de desarrollo para Java2.
Servidor Web Apache. Tomcat (Servlets y JavaServer Pages)
SOAP Services

Web Client

Web Server

Servlet & JSP Engine


ServiceManager JSPs

15

DESARROLLO DE APLICACIONES USANDO IBM-SOAP V.1.2

1) Desarrollar la clase Java correspondiente al servicio SOAP


public class Calculator { public double sum(double arg1, double arg2) throws Exception { return arg1+arg2; } }

DESARROLLO DE APLICACIONES USANDO IBM-SOAP V.1.2 2) Desarrollar el cliente SOAP


public class Calculator { .... private double doSum (double arg1, double arg2) throws SOAPException { // Construccin del objeto Call. Call call = new Call(); call.setTargetObjectURI ("urn:ibm-soap-demo-calculator"); call.setMethodName (sum); call.setEncodingStyleURI(encodingStyleURI); Vector params = new Vector (); params.addElement new Parameter("arg1", double.class, new Double (arg1), null)); params.addElement new Parameter("arg2", double.class, new Double (arg2), null)); call.setParams (params); // Hace la llamada Response resp = call.invoke (url, ); // (router URL, actionURI)

// Chequeo de la respuesta if (resp.generatedFault()) { Fault fault = resp.getFault (); System.out.println ("Ouch, the call failed: "); System.out.println ("Fault Code = " + fault.getFaultCode ()); System.out.println ("Fault String = " + fault.getFaultString()); return Double.NaN; } else { Parameter result = resp.getReturnValue (); return ((Double)result.getValue ()).doubleValue (); } } }

16

DESARROLLO DE APLICACIONES USANDO IBM-SOAP V.1.2


3) Configurar el servicio empleando la Herramienta de Administracin

Algunos campos:
ID del servicio Tiempo de vida del objeto Mtodos Tipo de proveedor (Java o scripts) Tipo de codificacin

INTEGRACIN CON CORBA

Se anticipa que SOAP, actualmente auspiciado por W3C, se el protocolo utilizado en las interacciones B2B en un futuro no muy lejano OMG (Object Management Group) anunci que haba comenzado a trabajar en un estndar permitir la integracin de SOAP con CORBA La propuesta est publicada como Interworking Request For Proposal CORBA/SOAP

Se espera que este nuevo estndar este listo para mediados del ao 2001, posibilitando que clientes SOAP invoquen a servidores CORBA y, clientes y servidores CORBA interoperen empleando SOAP

17

CONCLUSIONES

SOAP es un protocolo para la integracin de sistemas heterogneos caracterizado por su relativa simplicidad y por la gran popularidad de las tecnologas subyacentes que lo integran, vale decir HTTP y XML

La especificacin del protocolo no incluye caractersticas que presentan otras tecnologas de procesamiento distribuido tales como activacin de objetos, servicio de nombres y recolector de desechos, entre otras

CONCLUSIONES

Una de las ventajas ms importantes de SOAP es su inmunidad a las barreras de seguridad (firewalls), caracterstica que favorece la creacin de complejos sistemas de procesamiento ampliamente distribuidos que operan sobre la existente infraestructura de Internet

Aun con una especificacin carente de un modelo de objetos claro que evidencia la inmadurez de esta tecnologa, SOAP promete convertirse en el protocolo estndar utilizado en interaccines B2B

18

También podría gustarte