Red de conocimientos turísticos - Conocimientos sobre calendario chino - Comprensión preliminar: SOA, SOAP, servicio web, WSDL, etc.

Comprensión preliminar: SOA, SOAP, servicio web, WSDL, etc.

¿Qué es SOA y SOAP?

¿Qué es exactamente SOA?

La definición de SOA (Arquitectura Orientada a Servicios) es una arquitectura orientada a servicios, lo que significa que el software se diseña en servicios según funciones. Estos servicios definen interfaces de forma estándar y se llaman a través de protocolos estándar. . Las interfaces y los métodos de llamada definidos por SOA son independientes de los lenguajes de programación y las plataformas operativas. En términos generales, SOA se puede implementar en base a diferentes tecnologías subyacentes, como CORBA y servicios web. Sin embargo, CORBA rara vez se utiliza porque es demasiado complejo e inflado, por lo que la gran mayoría de SOA que se menciona actualmente se basa en tecnología de servicios web. En la implementación de Servicios Web, la interfaz del servicio SOA se define en XML.

Bajo la arquitectura SOA, el desarrollo de software comienza con el análisis de procesos de negocios, utiliza métodos de modelado de negocios en componentes para identificar y analizar varios modelos de negocios, integra varias prácticas en ellos y establece casos de uso sobre esta base. genere BPEL, y estos BPEL se pueden integrar en un marco de integración de servicios, que describe diversa información de servicios, unificando así varios módulos en el ESB para formar un enorme almacén de servicios.

Separe la capa intermedia y cree metadatos de arquitectura intertécnica y lógica empresarial en la capa intermedia, convirtiéndola en una arquitectura intertécnica, herencia a largo plazo y biblioteca empresarial y lógica empresarial acumuladas continuamente. El activo de información más valioso es la biblioteca de componentes orientados a servicios, y esta biblioteca de componentes de servicios también puede ser reutilizada por otras empresas y no depende de ninguna arquitectura técnica. Para exagerar, si todas las empresas de software utilizaran la arquitectura SOA, la industria del software mundial cambiaría por completo. Obviamente, dicho marco no es un producto, ni sólo una tecnología, sino una metodología para resolver problemas.

SOA se puede utilizar en dos escenarios: el primero es la interconexión empresarial; el segundo es un sistema de transacciones cerrado, que separa los metadatos y la lógica empresarial para hacerlos reutilizables. Por ejemplo, en el primer escenario, cuando las empresas entre diferentes empresas necesitan llamarse entre sí, se puede utilizar la tecnología SOA; en el segundo escenario, cuando es necesario migrar sistemas dentro de la empresa, se utilizan los datos y procesos comerciales originales de la tecnología SOA; definido se puede completar rápidamente.

SOA no es algo nuevo. Las organizaciones de TI han establecido e implementado con éxito software de aplicaciones SOA durante muchos años. BEA, IBM y otros fabricantes han visto su valor y han seguido su ejemplo. El objetivo de SOA es hacer que TI sea más flexible para responder más rápidamente a las necesidades de las unidades de negocio y lograr una empresa en tiempo real (Real-Time Enterprise, que es la visión objetivo descrita por Gartner para SOA). Ya en junio de 2001, el CIO de BEA, Rhonda, propuso transformar la infraestructura de TI de BEA en SOA y controlar toda la arquitectura empresarial, mejorar la eficiencia del desarrollo, acelerar el desarrollo y reducir el costo de personalización y las habilidades del personal. inversión y otros aspectos.

SOA es una especificación para diseñar, desarrollar, aplicar y gestionar unidades lógicas (de servicio) distribuidas en un entorno informático. Esta definición determina la amplitud de SOA. SOA requiere que los desarrolladores diseñen software de aplicación desde una perspectiva de integración de servicios, incluso si los beneficios de hacerlo no son evidentes de inmediato. SOA requiere que los desarrolladores piensen más allá del software de aplicación y consideren la reutilización de servicios existentes, o examinen cómo se pueden reutilizar los servicios. SOA fomenta el uso de tecnologías y métodos alternativos (como mecanismos de mensajería) para estructurar aplicaciones vinculando servicios en lugar de escribir código nuevo. Después de una arquitectura adecuada, la aplicación de este mecanismo de mensajería permite a las empresas responder rápidamente a las condiciones cambiantes del mercado dentro del tiempo permitido por el entorno empresarial simplemente ajustando el modelo de servicio original en lugar de verse obligadas a desarrollar un nuevo código de aplicación a gran escala.

SOA no es sólo una metodología de desarrollo, también incluye la gestión. Por ejemplo, después de aplicar SOA, los administradores pueden administrar fácilmente estas aplicaciones empresariales creadas en la plataforma de servicios en lugar de administrar un único módulo de aplicación.

El principio es que, al analizar las llamadas mutuas entre servicios, SOA permite a los gerentes de la empresa obtener fácilmente información sobre cuándo, por qué y qué lógica de negocios se ejecutó, ayudando así a los gerentes de empresas o arquitectos de aplicaciones a optimizar de forma iterativa sus procesos de negocios y sistemas de aplicaciones empresariales. .

Una de las ideas centrales de SOA es permitir que las aplicaciones empresariales se deshagan de las limitaciones de las soluciones orientadas a la tecnología y respondan fácilmente a los cambios y las necesidades de desarrollo de los servicios empresariales empresariales. Una sola aplicación en un entorno empresarial no puede satisfacer las (diversas) necesidades de los usuarios empresariales. Incluso una solución ERP a gran escala todavía no puede satisfacer las necesidades crecientes y cambiantes de los usuarios empresariales y responder rápidamente al mercado. necesidades empresariales existentes mediante el desarrollo continuo de nuevas aplicaciones y la ampliación de las existentes. Al centrarse en los servicios, las aplicaciones pueden centrarse en ofrecer procesos de negocio más completos y útiles. Como resultado, los sistemas de aplicaciones empresariales basados ​​en SOA suelen reflejar más estrechamente la integración con los modelos de negocio. Los servicios analizan la tecnología desde la perspectiva de los procesos de negocio, es decir, de arriba hacia abajo. Esta perspectiva es contraria a la típica perspectiva empresarial impulsada por la tecnología disponible. Las ventajas de los servicios son claras: están integrados con los procesos de negocio y, por lo tanto, pueden representar el modelo de negocio con mayor precisión y respaldar mejor los procesos de negocio. En cambio, vemos un modelo de aplicación empresarial centrado en la aplicación que obliga a los usuarios empresariales a limitar sus capacidades a las capacidades de la aplicación.

El proceso empresarial es el aire que fluye a través del marco empresarial, da vida a los componentes del modelo de negocio y define más claramente las relaciones entre ellos. Los procesos definen métodos especializados para interactuar con los modelos de negocio. Por ejemplo, la contabilidad puede ser un componente de un sistema de servicios empresariales, pero enviar facturas a los clientes es un proceso empresarial. Los servicios se definen para respaldar los procesos de negocios, por lo que a lo largo de todo el proceso se realizan las operaciones de ensamblaje de varios componentes del servicio durante la implementación del proceso y la lógica. Comprender los procesos de negocio es clave para personalizar los servicios.

Integración que beneficia a las empresas Los métodos tradicionales de integración de aplicaciones (integración punto a punto, bus de mensajes empresariales o integración de middleware (EAI), integración basada en procesos de negocio) son complejos, costosos e inflexibles. Estos métodos de integración son difíciles de adaptar rápidamente a las necesidades cambiantes de las empresas modernas. El desarrollo y la integración de aplicaciones basadas en arquitectura orientada a servicios (SOA) pueden resolver muchos de estos problemas.

SOA describe un modelo de desarrollo completo para ayudar a las aplicaciones cliente a conectarse a los servicios. Estos patrones personalizan una serie de mecanismos para describir servicios, notificar y descubrir servicios y comunicarse con servicios.

A diferencia de los métodos tradicionales de integración de aplicaciones, en SOA, todos los patrones que rodean los servicios se implementan utilizando tecnologías basadas en estándares. Lo mismo ocurre con la mayoría de los sistemas middleware de comunicaciones, como RPC, CORBA, DCOM, EJB y RMI. Sin embargo, su implementación no es perfecta y siempre surgen problemas a la hora de equilibrar la interactividad y la aceptabilidad de la personalización estándar. SOA intenta eliminar estos obstáculos. Porque casi todos los sistemas middleware de comunicación tienen modos de procesamiento fijos, como funciones RPC, objetos CORBA, etc. Sin embargo, los servicios se pueden definir tanto como funciones como externamente como objetos, aplicaciones, etc. Esto hace que SOA se adapte a cualquier sistema existente y permite que los sistemas se integren sin ninguna personalización especial.

SOA ayuda a los sistemas de información empresarial a migrar a una arquitectura de "dejar y capas", lo que significa que el sistema puede proporcionar interfaces de servicios web externos sin modificar los sistemas empresariales existentes. Esto se debe a que han sido encapsulados por el. Capa de aplicación que puede proporcionar interfaces de servicios web, por lo que SOA puede convertir rápidamente sistemas y aplicaciones en servicios sin modificar la arquitectura del sistema existente. SOA no sólo cubre información de aplicaciones empaquetadas, aplicaciones personalizadas y sistemas heredados, sino también funciones y datos de arquitecturas de TI como seguridad, gestión de contenidos, búsqueda, etc.

Debido a que las aplicaciones basadas en SOA pueden agregar fácilmente funciones de estas arquitecturas de servicios básicos, las aplicaciones basadas en SOA pueden responder a los cambios del mercado más rápidamente y diseñar y desarrollar nuevas aplicaciones funcionales para los departamentos comerciales de la empresa.

¿Qué es el Jabón?

SOAP es la abreviatura de Protocolo simple de acceso a objetos.

SOAP es un protocolo de comunicación ligero basado en XML para el intercambio de información utilizado en entornos distribuidos.

Comprensión de Soap:

El primer paso para comprender: SOAP. = HTTP + XML

El segundo paso de comprensión: SOAP convierte el código de uso XML en modos de codificación de parámetros de solicitud y respuesta, y utiliza HTTP para la transmisión.

SOAP combina tecnología WEB madura basada en HTTP con la flexibilidad y escalabilidad de XML.

El tercer paso de comprensión: específicamente hablando, una implementación SOAP puede considerarse simplemente como una solicitud y respuesta HTTP que sigue las reglas de codificación SOAP.

Nota: SOAP es un protocolo, no un lenguaje de programación. De hecho, muchos lenguajes han comenzado a soportar SOAP, como por ejemplo: Java, C, C++ y JavaScript.

¿El origen del Jabón? ¿Qué problema resuelve el jabón?

SOAP fue originalmente investigado por Microsoft para resolver los problemas de consumo de recursos MTS/COM, alto consumo de recursos y falta de portabilidad. Posteriormente, fue aceptado gradualmente por gigantes como IBM y se unió a la investigación. ahora se ha presentado al W3C para convertirse en un estándar de transmisión de aplicaciones de servicios web. La tecnología SOAP se utiliza principalmente para lograr la interoperabilidad entre una gran cantidad de programas y plataformas heterogéneos, de modo que una amplia gama de usuarios pueda acceder a las aplicaciones existentes.

SOAP significa Protocolo Simple de Acceso a Objetos. De hecho, como su nombre indica, SOAP es muy sencillo. Es un protocolo basado en XML que permite que los componentes y aplicaciones del programa se comuniquen entre sí mediante un protocolo de Internet estándar: HTTP. SOAP es una plataforma independiente que no depende de lenguajes de programación. Es simple, flexible y fácilmente extensible. Actualmente, las aplicaciones pueden comunicarse entre sí mediante una llamada a procedimiento remoto (RPC) basada en tecnología DCOM y CORBA, pero HTTP no fue diseñado para este propósito. RPC es muy difícil de aplicar en Internet y presenta muchos problemas de compatibilidad y seguridad porque los firewalls y servidores proxy suelen bloquear este tipo de tráfico. La mejor manera de comunicarse entre aplicaciones es a través del protocolo HTTP, ya que HTTP es compatible con todos los navegadores y servidores de Internet. Para ello se creó el protocolo SOAP.

SOAP (Protocolo simple de acceso a objetos) es un protocolo simple para intercambiar información en un entorno descentralizado o distribuido. Es un protocolo basado en XML y consta de cuatro partes: encapsulación SOAP (sobre), la encapsulación define un. marco que describe qué hay en el mensaje, quién lo envió, quién debe aceptarlo y procesarlo y cómo procesarlo. Reglas de codificación SOAP, que se utilizan para representar los datos que la aplicación necesita para usar instancias de tipo SOAP; Representación RPC, que representa un protocolo para llamadas y respuestas a procedimientos remotos, enlace SOAP, que utiliza el protocolo subyacente para intercambiar información.

Aunque estas cuatro partes se definen en su conjunto como parte de SOAP, funcionalmente se cruzan y son independientes entre sí. En particular, las reglas de sobre y codificación se definen en diferentes espacios de nombres XML (espacio de nombres), lo que facilita la definición.

¿Qué es CXF?

Apache CXF = Celtix + XFire, el predecesor de Apache CXF se llamaba Apache CeltiXfire, y ahora ha pasado a llamarse oficialmente Apache CXF, en adelante CXF. CXF hereda la esencia de dos grandes proyectos de código abierto, Celtix y Code First o WSDL First para publicar y utilizar servicios web fácilmente. Actualmente sigue siendo sólo un proyecto de incubación de Apache.

Apache CXF es un marco de servicios de código abierto que le ayuda a crear y desarrollar servicios utilizando una API de programación frontend, como JAX-WS. Estos Servicios pueden admitir múltiples protocolos, como SOAP, XML/HTTP, RESTful HTTP o CORBA, y pueden ejecutarse en múltiples protocolos de transmisión, como HTTP, JMS o JBI. CXF simplifica enormemente la creación de Servicios y hereda Además de. Siguiendo la tradición de XFire, también se puede integrar de forma natural y perfecta con Spring.

CXF contiene una gran cantidad de características funcionales, pero se centra principalmente en los siguientes aspectos:

Soporta estándares de servicios web: CXF admite múltiples estándares de servicios web, incluidos SOAP, perfil básico y WS. -Direccionamiento, WS-Policy, WS-ReliableMessaging y WS-Security.

Frontends: CXF admite múltiples modelos de programación "Frontend". CXF implementa la API JAX-WS (siguiendo la versión JAX-WS 2.0 TCK). También contiene un "frontend simple" que permite a los clientes y EndPoints. Creado sin anotación Anotación. CXF admite tanto el desarrollo WSDL como el desarrollo de código desde Java.

Facilidad de uso: CXF está diseñado para ser intuitivo y fácil de usar. Hay una gran cantidad de API simples que se utilizan para crear rápidamente servicios de código primero. Varios complementos de Maven también facilitan la integración, admiten la API JAX-WS, admiten el método de configuración XML más simplificado de Spring 2.0, etc.

Compatibilidad con protocolos binarios y heredados: CXF está diseñado para ser una arquitectura conectable que puede admitir enlaces de tipo XML y no XML, como JSON y CORBA.

Usemos cxf para crear un servicio web simple.

En primer lugar, los paquetes requeridos por cxf: el sitio web explica que los siguientes paquetes son necesarios, pero en mi proyecto real, los paquetes en rojo no se utilizan.

Puedes agregar paquetes que se adapten a tus necesidades.

cxf.jar

commons-logging.jar

geronimo-activation.jar (O el equivalente de Sun)//

geronimo -annotation.jar (O el equivalente de Sun)//

geronimo-javamail.jar (O el equivalente de Sun)//

neethi.jar

jaxb -api.jar

jaxb-impl.jar

stax-api.jar//

XmlSchema.jar

wstx-asl .jar

xml-resolver.jar

Navegadores y aplicaciones distribuidas

Estudie el desarrollo actual de aplicaciones y encontrará una tendencia definitiva: la gente está empezando a preferir el navegador. -Aplicaciones de cliente ligero basadas en. Ciertamente, esto no se debe a que un cliente ligero proporcione una mejor interfaz de usuario, sino a que evita el alto costo de publicar una aplicación de escritorio. La publicación de aplicaciones de escritorio es costosa, en parte debido a problemas con la instalación y configuración de las aplicaciones, y en parte debido a problemas de comunicación entre el cliente y el servidor.

Las aplicaciones tradicionales de cliente enriquecido de Windows utilizan DCOM para comunicarse con el servidor y llamar a objetos remotos. Configurar DCOM para que funcione correctamente en una red grande será una tarea muy desafiante y también una pesadilla para muchos ingenieros de TI. De hecho, muchos ingenieros de TI preferirían soportar las limitaciones funcionales que trae el navegador que ejecutar un DCOM en la LAN. El resultado, en mi opinión, es una aplicación fácil de publicar, pero difícil de desarrollar y con una interfaz de usuario extremadamente limitada. En el caso extremo, gasta más dinero y tiempo, pero desarrolla una aplicación con una funcionalidad más débil desde la perspectiva de los usuarios. ¿No lo crees? Pregúntele a su contador qué piensa del nuevo software de contabilidad basado en navegador: la gran mayoría de los usuarios de programas empresariales quieren una interfaz de usuario de Windows más amigable.

En cuanto al problema de comunicación entre el cliente y el servidor, una solución perfecta es utilizar el protocolo HTTP para comunicarse. Esto se debe a que cualquier máquina que ejecute un navegador web utiliza el protocolo HTTP. Al mismo tiempo, muchos cortafuegos actuales también están configurados para permitir únicamente conexiones HTTP.

Otro problema al que se enfrentan muchos programas comerciales es la interoperabilidad con otros programas. Si todas las aplicaciones se escribieran en lenguaje COM o .NET y se ejecutaran en la plataforma Windows, el mundo sería pacífico. Sin embargo, de hecho, la mayoría de los datos comerciales todavía se almacenan en forma de archivos no relacionales (VSAM) en mainframes y se accede a ellos mediante programas de mainframe escritos en lenguaje COBOL. Además, muchos programas comerciales siguen escribiéndose en C++, Java, Visual Basic y una variedad de otros lenguajes. Ahora, todos los programas, excepto los más simples, necesitan integrar e intercambiar datos con aplicaciones que se ejecutan en otras plataformas heterogéneas. Estas tareas generalmente se realizan mediante métodos especiales, como transferencia y análisis de archivos, colas de mensajes y API que solo son adecuadas para determinadas situaciones, como la "Comunicación avanzada de programa a programa (APPC)" de IBM, etc. Anteriormente, no existía ningún estándar de comunicación de aplicaciones que fuera independiente de la plataforma, el modelo de componente y el lenguaje de programación. Sólo a través del Servicio Web el cliente y el servidor pueden comunicarse libremente mediante HTTP, independientemente de la plataforma y el lenguaje de programación de los dos programas.

¿Qué es WebService?

Los servicios web son una nueva plataforma para crear aplicaciones distribuidas interoperables. Como programador de Windows, es posible que haya creado aplicaciones distribuidas basadas en componentes utilizando COM o DCOM.

COM es una muy buena tecnología de componentes, pero podemos citar fácilmente situaciones en las que COM no puede cumplir los requisitos.

La plataforma de servicios web es un conjunto de estándares que definen cómo las aplicaciones pueden lograr la interoperabilidad en la Web. Puede escribir servicios web en cualquier idioma que desee y en cualquier plataforma que desee, siempre que podamos consultar y acceder a estos servicios a través de estándares de servicios web.

La plataforma de servicios Web requiere de un conjunto de protocolos para lograr la creación de aplicaciones distribuidas. Cualquier plataforma tiene su método de representación de datos y su sistema de tipos. Para lograr la interoperabilidad, la plataforma de servicios web debe proporcionar un sistema de tipos estándar para comunicar diferentes sistemas de tipos en diferentes plataformas, lenguajes de programación y modelos de componentes. En los sistemas distribuidos tradicionales, las plataformas basadas en interfaces proporcionan algunos métodos para describir interfaces, métodos y parámetros (Anotación: como el lenguaje IDL en COM y COBAR). De manera similar, la plataforma de servicios web también debe proporcionar un estándar para describir el servicio web de modo que los clientes puedan obtener suficiente información para llamar al servicio web. Finalmente debemos tener una forma de realizar llamadas remotas a este servicio web. Este método es en realidad un protocolo de llamada a procedimiento remoto (RPC). Para lograr la interoperabilidad, este protocolo RPC también debe ser independiente de la plataforma y del lenguaje de programación.

El servicio web es una nueva rama de las aplicaciones web. Son aplicaciones modulares autocontenidas y autodescriptivas que se pueden publicar, ubicar y llamar a través de la web. Los servicios web pueden realizar cualquier función, desde solicitudes simples hasta procesos comerciales complejos. Una vez implementadas, otras aplicaciones de servicios web pueden descubrir y llamar al servicio que implementan.

Web Service es una aplicación que puede utilizar protocolos estándar de Internet, como el Protocolo de transferencia de hipertexto (HTTP) y XML, para incorporar mediante programación funciones en Internet e intranets. Los servicios web pueden verse como programación de componentes en la Web.

1 Historia

Tecnologías muy utilizadas en la web:

◆TCP/IP: Protocolo de red universal, utilizado por diversos dispositivos

◆HTML: una interfaz de usuario universal que puede mostrar datos mediante etiquetas HTML

◆Java: un lenguaje de programación universal que se puede escribir una vez y ejecutar en cualquier lugar

◆XML: una expresión de datos universal lenguaje, una manera fácil de entregar datos estructurados en la web

Se caracterizan por su apertura y naturaleza multiplataforma. La apertura es la base de los servicios web.

2 Tendencias en Desarrollo Web

Contenido más dinámico

◆El ancho de banda es más económico y fácil de obtener

◆El almacenamiento en memoria es más económico, más fácil de obtener

◆La informática ubicua se vuelve más importante: una gran cantidad de dispositivos, como teléfonos móviles, páginas web, computadoras y PC, se han vuelto comunes en Internet, y las plataformas se han vuelto más diversas, como las tecnologías multiplataforma como XML se han vuelto más importantes

3. ¿Qué papel juegan los servicios web?

Las tendencias anteriores significan que el procesamiento, la manipulación y la agregación de contenidos más inteligentes están adquiriendo importancia.

Veamos las cuatro tendencias predichas desde la perspectiva de los servicios web:

◆El contenido es más dinámico: un servicio web debe poder fusionar contenido de múltiples fuentes diferentes, que pueden incluir acciones, clima, noticias, etc., en un entorno tradicional el contenido, como niveles de inventario, pedidos de compras o información de catálogo, etc., proviene del sistema back-end

◆El ancho de banda es más barato: los servicios web pueden distribuir varios tipos de contenido (audio, streaming de vídeo, etc.)

◆Almacenamiento más económico: los servicios web deben poder manejar grandes cantidades de datos de forma inteligente, lo que significa utilizar tecnologías como bases de datos, directorios LDAP, almacenamiento en búfer y software de equilibrio de carga. para mantener la escalabilidad

◆ La informática universal es más importante: los servicios web no pueden exigir que los clientes utilicen una determinada versión del navegador tradicional de Windows y deben admitir varios dispositivos, plataformas, tipos de navegador y varios tipos de contenido.

4 Dos tecnologías importantes

Para lograr este objetivo, los servicios web utilizan dos tecnologías:

◆XML XML se utiliza para transmitir información estructurada en la web. Excelente manera de usar datos, los servicios web necesitan operar datos de manera confiable y automática. HTML no cumplirá con los requisitos, pero XML puede hacer que los servicios web procesen datos de manera muy conveniente. La separación de contenido y presentación es ideal.

◆SOAP SOAP utiliza mensajes XML para llamar a métodos remotos, de modo que los servicios web puedan interactuar con máquinas remotas a través de la publicación y obtener métodos del protocolo HTTP. Además, SOAP es más robusto, flexible y fácil de usar.

Otras tecnologías como UDDI y WSDL están estrechamente integradas con tecnologías XML y SOAP para el descubrimiento de servicios.

Estas tres tecnologías conforman la plataforma de servicios web.

XML y XSD

El lenguaje de marcado extensible (XML) es el formato básico para representar datos en la plataforma de servicios web. Además de ser fácil de crear y analizar, la principal ventaja de XML es que es independiente de la plataforma y del proveedor. La irrelevancia es más importante que la superioridad técnica: los proveedores de software no elegirán una tecnología inventada por un competidor.

XML resuelve el problema de la representación de datos, pero no define un conjunto de tipos de datos estándar, y mucho menos cómo ampliar este conjunto de tipos de datos. Por ejemplo, ¿qué representan exactamente los números enteros? ¿16 bits, 32 bits o 64 bits? Todos estos detalles son importantes para lograr la interoperabilidad. XML Schema (XSD) desarrollado por W3C es un conjunto de estándares que resuelve específicamente este problema. Define un conjunto estándar de tipos de datos y proporciona un lenguaje para ampliar este conjunto de tipos de datos. La plataforma de servicios web utiliza XSD como sistema de tipos de datos. Cuando utiliza un determinado lenguaje (como VB.NET o C#) para construir un servicio web, para cumplir con el estándar de servicio web, todos los tipos de datos que utiliza deben convertirse a tipos XSD. Es posible que la herramienta que utilice haya completado automáticamente esta conversión, pero lo más probable es que modifique el proceso de conversión para adaptarlo a sus necesidades.

WSDL

¿Cómo presentaría a los demás qué funciones tiene su servicio web y los parámetros para cada llamada de función? Usted mismo podría escribir un conjunto de documentación e incluso podría decirle verbalmente a las personas que necesitan utilizar su servicio web. Estos métodos informales tienen al menos un problema grave: cuando los programadores se sientan frente a la computadora y quieren utilizar su servicio web, sus herramientas (como Visual Studio) no pueden brindarles ninguna ayuda, porque estas herramientas no brindan ninguna ayuda. en absoluto. No entiendo su servicio web. La solución es: proporcionar un documento de descripción formal en un formato legible por máquina. El lenguaje de descripción de servicios web (WSDL) es un lenguaje basado en XML que se utiliza para describir servicios web y sus funciones, parámetros y valores de retorno.

Debido a que está basado en XML, WSDL es legible tanto por máquinas como por humanos, lo cual es un gran beneficio. Algunas de las últimas herramientas de desarrollo no sólo pueden generar documentos WSDL basados ​​en su servicio web, sino también importar documentos WSDL para generar código que llame al servicio web correspondiente.