Recomendar por email:


La premisa de las tecnologías de los servicios Web (como por ejemplo SOAP y WSDL) forma el siguiente paso lógico en la evolución de la informática distribuida. Estas tecnologías aún se encuentran en una fase inicial y su desarrollo seguirá un ritmo acelerado durante los próximos meses. La mayoría de las compañías de software están invirtiendo cantidades astronómicas en este sector. Los Servicios Web son aplicaciones modulares autodescriptivas. La arquitectura de los Servicios Web se describe como el envoltorio del código de aplicación. Este envoltorio proporciona medios estandarizados para la descripción de los Servicios Web y su función. El aspecto más interesante de los Servicios Web es que cualquier usuario de XML puede acceder a ellos independientemente de la plataforma, lenguaje o modelo de objetos que utilice. Este libro proporciona una visión global del estado actual de estas tecnologías en constante cambio, y comienza por detallar los estándares que respaldan los modelos Web Service (SOAP, WSDL y UDDI) para después poner esta teoría en uso en una amplia variedad de conjuntos de herramientas, plataformas y entornos de desarrollo. Servicios Web XML, está indicado para desarrolladores que quieran saber qué son los servicios Web, cómo se crean, registran y utilizan.
Introducción A quién va dirigido este libro Materiales necesarios Estructura del libro Introducción a los servicios Web 1. La evolución de los servicios Web 2. Conceptos generales de los protocolos de transporte de Internet Lenguajes de los servicios Web 3. Conceptos básicos de SOAP 4. WSDL 5. Enlaces SOAP 6. UDDI 7. Implantaciones UDDI Implementaciones de servicios Web 8. Conjunto de herramientas SOAP 2.0 de Microsoft 9. Otras Implementaciones SOAP 10. Java Web Service 11. Servicios Web .Net 12. Python Web Services 13. Seguridad en servicios Web 14. Caso práctico de sistema de archivos 15. Caso práctico Wrox Auction Apéndices &n A &n B &n C Convenciones Asistencia al cliente Descarga del código de ejemplo para el libro Erratas Asistencia por correo electrónico p2p.wrox.com La asistencia más completa 1. La evolución de los servicios Web El futuro está en los servicios Web Repaso a la historia de la informática distribuida La era de las redes locales CORBA/IIOP DCOM RMI Comunicación sincrónica frente a comunicación asíncrona La era de Internet y la Web Retos de los protocolos actuales Los primeros intentos de conexión en aplicaciones Web Implementaciones iniciales de tipo SOAP con XML-RPC Servicios Web frente a EAI Introducción a los servicios Web La arquitectura de los servicios Web Llamada SOAP Mensajes SOAP Ejemplo sencillo de SOAP SOAP 1.2 Enlaces SOAP Extensiones SOAP Descripción Ubicación La arquitectura del marco de los servicios Web Herramientas y marcos de los servicios Web de los proveedores HP y e-Speak Motor e-Speak Service Specification Framework (SFS) E-Service Village (ESV) HP Web Services Platform El comercio electrónico dinámico de IBM Productos Futuras tendencias La plataforma .NET y .NET Framework de Microsoft .NET Framework Sun Microsystems y Sun ONE JAXP (API Java para análisis XML) JAXB (API Java para vinculación XML) JAX-RPC (API Java para RPC basado en XML) JAXM (API Java para Mensajes XML) JAXR (API Java para Registros XML) Los servicios Web y otras iniciativas XML ebXML RosettaNet Common Business Library (xCBL) BizTalk Framework Commerce XML (cXML) Depósitos XML Ejemplo de un conjunto de servicios Web: Hailstorm Internet orientado a los servicios El flujo del proceso y la descripción del diseño RosettaNet XLANG y WSFL Agentes Web La Web semántica Resumen 2. Protocolos de transporte de Internet: Conceptos generales de HTTP y SMTP La importancia de los protocolos La pila de protocolo de Internet El modelo de referencia OSI El modelo TCP/IP La integración de SMPT y HTTP en la pila de protocolos de Internet Perspectiva general de SMTP Opciones actuales y ampliaciones previstas Parámetros necesarios y comandos usuales Ejemplo de una transacción sencilla de SMTP Agentes de relevo Limitaciones Perspectiva general de MIME Conceptos generales de HTTP Opciones actuales y ampliaciones previstas Parámetros necesarios Ejemplo de una transacción sencilla de HTTP Conexión y petición del cliente Respuesta del servidor al cliente Tipos de conexión HTTP La extensión de los encabezados de HTTP Resumen 3. Conceptos básicos de SOAP Fundamentos de SOAP SOAP y los servicios Web El modelo de intercambio de mensajes SOAP Documentos XML como mensajes Emisores y receptores Cadenas de mensajes Comportamiento de los puntos extremos Diseño modular Mensajes SOAP Envelope Espacios de nombre de Envelope Atributo encodingstyle Body Header Atributo actor Atributo mustUnderstand Fault Elemento faultcode Elemento faultstring Elemento faultactor Elemento detail Repaso al funcionamiento del punto extremo Body-Conscious Datos Estilo de codificación Esquemas XML Codificación SOAP Tipos de datos primitivos Tipos de datos compuestos Codificación a medida Valores multifuncionales ¿Cuál es la sencillez? Transportes Separación del mensaje y el transporte HTTP Encabezado SOAPAction Códigos del estado SOAP y RPC Convención de SOAP RPC La llamada La respuesta RPC y HTTP Más allá de RPC: el funcionamiento con documentos XML Resumen 4. WSDL: Lenguaje de definición de servicios Web Repaso a la historia de WSDL Razones para el uso de WSDL La sintaxis de WSDL Un ejemplo completo de WSDL Espacios de nombre Elementos de una definición documentation types Mensajes Tipos de puertos Enlaces Puertos y servicios Transmisiones Primitivas Operación de dirección única Operación de petición/respuesta Operación de solicitud/respuesta Operación de notificación La identificación de mensajes en una operación Enlaces de protocolo SOAP soap:binding soap:operation soap:body soap:fault soap:header y soap:headerfault Ejemplo de SMTP Enlace HTTP GET/POST Enlace MIME mime:multipartRelated mime:content mime:mimeXml Ejemplos de WSDL Enlaces múltiples Microsoft SOAP Toolkit Web Services Toolkit de IBM Resumen 5. Enlaces SOAP Desvíos de la información básica DNS MIME Los URI, URN y URL, ¡caramba! HTTP Un ejemplo de HTTP Transporte de SOAP por medio de HTTP Utilización de Microsoft SOAP Toolkit El servidor El cliente Utilización del servidor Echo SMTP El protocolo SMTP Ejemplo de una visión general Ejemplo de configuración Servidor Web Apache Apache SOAP, Tomcat y Xerces Ejemplo de código FTP Modo de funcionamiento Ejemplo de SOAP Resumen 6. Descripción universal, descubrimiento e integración Fundamentos para UDDI Conceptos de UDDI Campos de implementación de UDDI Implementación de un dispositivo de experimentación Datos almacenados en el registro Especificaciones de UDDI Modelo de información de UDDI Información de la empresa Información de los servicios de la empresa Información vinculante Puntos de especificación e información técnica Declaraciones del editor Modelo de programación de UDDI El API UDDI Consulta API Editor API Errores UDDI Patrones de búsqueda Fundamentos de diseño de API Especificaciones para operadores UDDI Controlar la información del directorio La seguridad Requisitos para el control de la información Custodia de las transferencias Algoritmo de generación de UUID Interfaz de usuario del operador Web UDDI y WSDL Estructura de la descripción de servicios de WSDL Autoría de las descripciones de servicios UDDI Otras tecnologías ebXML JAXR DSML Resumen Referencias 7. Implementaciones de UDDI La configuración Descargas de software Instrucciones de configuración Configuración de Tomcat y Apache SOAP El entorno de las configuraciones Introducción a UDDI4J UDDI4J API Construir un objeto UDDIProxy Obtener un elemento de autentificación Métodos para publicar en el registro UDDI Métodos para suprimir del registro UDDI Obtener todas las entidades empresariales y tModels que hemos publicado Métodos de consulta Navegar por el registro UDDI mediante programación Navegar por el registro UDDI utilizando herramientas GUI Un servicio Web de una compañía aérea Crear una cuenta con el registro UDDI Desarrollo e implementación del servicio Web Publicar el tModel mediante programación Publicar el tModel utilizando herramientas GUI Publicar la entidad empresarial mediante programación Publicar la Entidad Empresarial utilizando herramientas GUI Encontrar e invocar métodos en el servicio Web Eliminar una entidad empresarial mediante programación Eliminar una entidad empresarial utilizando herramientas GUI Microsoft UDDI SDK Plataforma de servicios Web HP El navegador UDDI de HP El cliente SDK de UDDI Registro privado de UDDI UDDI::Lite Otras implementaciones Resumen Referencias 8. SOAP Toolkit 2.0 de Microsoft SOAP para el "patrimonio" Windows ¿Me he perdido 1.0? Descargar el Toolkit El modelo MSTK2 Segunda parte de WSDL Introducción a WSML Los ejemplos Navegar a 10.000 pies - el API de alto nivel Construir el objeto SysInfo Generar WSDL y WSML Los detectores El objeto SoapServer El método Init() El método SoapInvoke() El objeto SoapClient El método mssoapinit() Extras de SoapClient Depuración con Toolkit El elemento Fault El rastreo de los mensajes Profundizando - El API de bajo nivel Déjà vu - SystemInfoService, el camino difícil En el servidor Clientes de bajo nivel Documentos - el SMO Framework Generación del código Funcionamiento de los objetos SMO ¿Por qué SMO? Más allá de los fundamentos Trabajar con conectores Conectores y SoapClient Conectores personalizados Trabajar con tipos complejos Matrices Tipos personalizados Demasiado ampliado Resumen 9. Otras implementaciones de SOAP Primeros pasos El ejemplo de servicio Echo Examinar las conexiones de SOAP con tcpTrace SOAP::Lite para Perl La instalación de SOAP::Lite Requisitos previos Preparación del archivo Makefile Construcción, comprobación e instalación del paquete Implementación de servicios Echo con SOAP::Lite La implementación del servidor y cliente echoString La implementación del servidor y el cliente echoIntegerArray La implementación del servidor y cliente echoStruct Más fundamentos de SOAP::Lite Dispositivo de resolución de errores para clientes SOAP::Lite Definición local del dispositivo de resolución de errores Definición global del dispositivo Fault Configuración del cliente por medio de la vinculación Envío del servicio Codificación de conjuntos de caracteres EasySoap++ La instalación de EasySoap++ Requisitos previos Obtener e instalar Expat Obtener e instalar EasySoap++ La construcción de servicios y clientes Echo echostring echoIntegerArray echoStruct Más fundamentos de EasySoap++ La codificación del parámetro La codificación del conjunto de caracteres y la versión del esquema XML SOAPx4 La instalación SOAPx4 Requisitos previos Descargar e instalar el paquete SOAPx4 Construcción de clientes y servicios Echo echoString echoIntegerArray echoStruct Más fundamentos de SOAPx4 Tipos de datos válidos en la codificación de parámetros Codificación del conjunto de caracteres y la versión del esquema XML Configuración cliente por medio de la vinculación WSDL Resumen 10. Implementaciones de los servicios Web de Java Introducción Instalación Primera demo simple El servidor El cliente Objetos enviados La implementación de los objetos Campsite La utilización del Tunneler Estrategias de envoltura Generar el proxy con WSTK UDDI Configurar otro servicio Web Fin del juego Escribir un codificador Utilizar un contenedor servlet como alternativa Epílogo Resumen 11. Servicios Web .NET Primeros pasos con los servicios Web para .NET Cómo adquirir Visual Studio .NET Cómo adquirir .NET Framework SDK Descarga de .NET Framework Redistributable Fundamentos de .NET Common Language Runtime Sistema de tipos común Ensamblados Biblioteca de clase .NET Framework C# ASP .NET Un Servicio web ASP .NET Un servicio de actualización del código de área El problema La clase AreaCodeService Servicio Web ASP .NET AreaCodeService Archivos .asmx El espacio de nombre System.Web.Services La directiva WebService El atributo WebMethod AreaCodeService.asmx Comprobación del funcionamiento de AreaCodeService Recuperación de WSDL Soporte del protocolo ASP .NET HTTP GET y HTTP POST SOAP Creación de un servicio Web a partir de una descripción WSDL Los servicios Web ASP .NET con Visual Studio .NET Cómo utilizar la plantilla del servicio Web ASP .NET de Visual Studio .NET Cómo utilizar Codebehind Archivos generados por la plantilla Descubrimiento dinámico y archivos .VSDISCO AssemblyInfo.cs, Global.asax, Global.asax.cs y Web.config La clase WebService Más sobre los atributos WebMethod y WebService Uso de los atributos para documentar nuestro servicio Web Cambiar el espacio de nombre predeterminado Renombrar un servicio Web o un método de un servicio Web Otras propiedades del atributo WebMethod Construir proxies del servicio Web Introducción al descubrimiento del servicio Web y DISCO Nuestra aplicación de comprobación del cliente Creación de un proxy con Visual Studio .NET Creación de un proxy asíncrono Uso de la utilidad para la descripción del lenguaje de los servicios Web para generar un proxy Un servicio Web con .NET Remoting Servidor ATL Resumen 12. Desarrollo de servicios Web con Python Modulos estándar de la biblioteca de Python de interés para los desarrolladores de servicios Web Módulos de la arquitectura Web BaseHTTPServer, SimpleHTTPServer y CGIHTTPServer urllib y urllib 2 httplib Módulos del formato de información de Internet xml.parsers.expat xml.dom xml.sax mimetools y MimeWriter uu, base64, md5 y sha Módulos Python de terceros y herramientas de interés para los desarrolladores de servicios Web SOAP.py SOAPy soaplib.py Orchard Lye PyXML 4Suite 4Suite Server Instalación del software requerido Python PyXML 4Suite Python y SOAP SOAP desde sus principios básicos Servidor básico SOAP creado con Python El cliente básico SOAP de Python SOAP.py como cliente de SOAP SOAPy como cliente SOAP, utilizando WSDL Python y WSDL Procesamiento de WSDL con wsdl4py Lectura y consulta de documentos WSDL existentes Creación y manipulación WSDL Procesamiento de WSDL utilizando RDF La implementación de los servicios Web en 4Suite Server La descripción WSDL del servicio Web Software Version El código del controlador de SOAP Configurar el controlador de SOAP Comprobar la implementación de SOAP con SOAP.py Comprobar la implementación de SOAP con la biblioteca básica de Python Resumen Más recursos 13. Seguridad de los servicios Web La seguridad y los servicios Web de XML La seguridad como objetivo secundario La seguridad como un proceso Aspectos clave de la seguridad Autenticación Autorización Auditoría y conexión Integridad y codificación Privacidad y codificación Disponibilidad (equilibrio de carga, failover y copia de seguridad) Firmas de reconocimiento y digitales Estrategias para la seguridad de los servicios Web La seguridad en el nivel del transporte HTTP La autenticación básica La autenticación basada en formularios El SSL en la autenticación básica Certificados de clientes Otras opciones de autenticación SMTP S/MIME Seguridad en el nivel de la aplicación Las credenciales en los mensajes de SOAP La autenticación Kerberos y basada en tickets Kerberos Especificaciones relacionadas con la seguridad de XML XML Signature XML Encryption Ampliaciones de las firmas digitales con SOAP La privacidad por medio de P3P Digital Rights Management Resumen 14. Caso práctico: Un servicio Web de sistema de archivos de Java El servicio Web FileSystem ¿Por qué es necesaria la seguridad en los servicios Web? Apache SOAP y el Proveedor accesible Configurar el servidor Cómo configurar la base de datos Creación de un proveedor Codificación el servicio Web de Filesystem Cómo utilizar SOAP Attachments La utilización de los servicios Web con los proveedores accesibles Escribir la clase proxy del Filesystem Codificación de la clase cliente de Filesystem Cómo empaquetar el archivo .jar Comprobación del funcionamiento Resumen 15. Caso práctico: Wrox Online Auction Domain Requisitos Venta de un artículo Compra de un artículo Análisis de la transacción Especificación Implementacíon de los servicios Web WOAD La organización de los proyectos Creación del proyecto del servidor Creación del proyecto cliente Implementación de la operación ping Implementación del ping en el servidor Implementación del ping en el cliente Implementación de las transacciones empresariales En el proyecto servidor En el proyecto cliente register() login() makeoffer() Integración los servicios Web con su aplicación Administración del estado y seguridad Publicación del servicio ¿Qué hemos logrado? Caso 1 - Clientes minoristas del servicio Web Caso 2 - Desarrolladores del servicio Web Resumen A. Protocolo simple de acceso a objetos (SOAP) 1.1 Resumen Estado Resumen de contenidos 1. Introducción 1.1 Objetivos de diseño 1.2 Convenciones notacionales 1.3 Ejemplos de mensajes de SOAP 2. Modelo de intercambio de mensajes de SOAP 3. Relación con XML 4. El sobre de SOAP 4.1.1 Atributo encodingStyle de SOAP 4.1.2 Modelo de versión del sobre 4.2 El encabezamiento de SOAP 4.2.1 Utilización de los atributos del encabezamiento 4.2.2 Atributo SOAP actor 4.2.3 Atributo mustUnderstand de SOAP 4.3 El cuerpo de SOAP 4.3.1 Relación entre los elementos Header y Body de SOAP 4.4 Errores de SOAP 4.4.1 Códigos de error de SOAP 5. Codificación de SOAP 5.1 Normas para la codificación de los tipos en XML 5.2 Tipos simples 5.2.1 Cadenas 5.2.2 Enumeraciones 5.2.3 Matriz de Bytes 5.3 Accesos polimórficos 5.4 Tipos compuestos 5.4.1 Valores compuestos, estructuras y referencias a los valores 5.4.2 Arrays (matrices) 5.5 Valores predeterminados 5.6 Atributo de raíz SOAP 6. Utilizar SOAP en HTTP 6.1 Petición HTTP de SOAP 6.1.1 El campo de encabezamiento SOAPAction de HTTP 6.2 Respuesta HTTP de SOAP 6.3 La estructura ampliada de HTTP 6.4 Ejemplos HTTP de SOAP 7. Utilizar SOAP para RPC 7.1 RPC y SOAP Body 7.2 RPC y la encabezamiento de SOAP 8. Consideraciones de Seguridad 9. Referencias A. Ejemplos del elemento Envelope de SOAP A.1 Muestra de la codificación de las peticiones de las llamadas A.2 Muestra de la codificación B. Lenguaje de descripción de servicios Web (WSDL) 1.1 Sinopsis Estado &n de contenidos 1. Introducción 1.1 Ejemplo de documento WSDL 1.2 Convenciones de notación 2. Definición de servicios 2.1 Estructura del documento WSDL 2.2 Tipos 2.3 Mensajes 2.4 Tipos de puerto 2.5 Vínculos 2.6 Puertos 2.7 Servicios 3. Vinculación SOAP 3.1 Ejemplos de SOAP 3.2 Cómo extienden los vínculos SOAP al lenguaje WSDL 3.3 soap:binding 3.4 soap:operation 3.5 soap:body 3.6 soap:fault 3.7 soap:header y soap:headerfault 3.8 soap:address 4. Vinculación HTTP GET y HTTP POST 4.1 Ejemplos HTTP GET/POST 4.2 Cómo contribuye la vinculación HTTP GET/POST a extender el lenguaje WSDL 4.3 http:address 4.4 http:binding 4.5 http:operation 4.6 http:urlEncoded 4.7 http:urlReplacement 5. Vinculación MIME 5.1 Ejemplo de vinculación MIME 5.2 Cómo contribuyen la vinculación MIME a extender el lenguaje WSDL 5.3 mime:content 5.4 mime:multpartRelated 5.5 soap:body 5.6 mime:mimeXml 6. Referencias A1. Notas sobre identificadores URI A 1.1 Espacios de nombre XML y ubicaciones de esquema A 1.2 URI relativas A 1.3 Generación de identificadores URI A.2. Formato de conexión para ejemplos WSDL A 2.1 Ejemplo A 3. Ubicación de los elementos de Extensibilidad A 4. Esquemas A 4.1 Esquema WSDL A 4.2 Esquema de vinculación SOAP A 4.3 Esquema de vinculación HTTP A 4.4 Esquema de vinculación C. Tipos de datos UDDI 2.0 Denominación de estructuras de datos La estructura businessEntity Especificación de la estructura División de las subestructuras discoveryURLs name contacts businessServices identifierBag categoryBag La estructura businessService Especificación de la estructura División de las subestructuras bindingTemplates La estructura bindingTemplate Especificación de la estructura División de las subestructuras accessPoint hostingRedirector tModellnstanceDetails La estructura tModel Usos Definición de huella dactilar técnica Cómo definir una referencia abstracta de espacio de nombre Especificación de la estructura División de las subestructuras La estructura publisherAssertion Especificación de la estructura División alfabético
Otros clientes que compraron Servicios Web XML también compraron:
Otros libros de la colección Wrox (Anaya Multimedia):
Otros libros de XML:
Categorías principales