Alberto Pedroso García - Junio/2004 Victor Ricardo Díaz – Junio/2007 Web Services.

Slides:



Advertisements
Presentaciones similares
Web Services Definición. Ventajas que ofrece.
Advertisements

Web Services.
Java Web Services Developer Arquitectura
Nau Gran dHivern Intr. a la creación y gestión de páginas web Introducción a la web.
Internet y tecnologías web
Servicios Web XML 03 de Junio de 2004 Fernando Alonso Blázquez.
CUPS Configuración y Uso de Paquetes de Software
PRESENTA: Mizrain Cano Chico Profesor: Lic. Albino Petlacalco Ruiz
ADELA TORRES JONATHAN BEJARANO
Modelando aplicaciones
Servidores Windows Http Ftp …
Aplicación informática. formando parte de una red. pone sus recursos a disposición de las demás computadoras(clientes) de la red. Maneja información.
Lenguajes Servicios Web
Cátedra Pragma Orientación a Servicios Parte I 2 © PRAGMA S.A.
Servicios Web.
SERVICIOS DE TCP/IP.
UD 4: “Instalación y administración de servicios Web” Características generales de un servidor Web. Jorge De Nova Segundo.
Modelos De Referencia OSI y TCP/IP.
"java del lado del servidor" Servlet y JSP Java Server Pages.
Tipos de Servicios Web.
INFOPATH.
Curso de Java y Aplicaciones Web
IMPLEMENTACIÓN DE ARQUITECTURA EMPRESARIAL
Intercambio de información Procesamiento Sin intervención del usuario Acelerando tiempos de respuesta Normalización Entre plataformas Entre lenguajes.
Introducción XML y WebServices.
Características generales de un servicio Web.
Seguridad del protocolo HTTP
WSDL & UDDI Taller de Sistemas de Información 1
Sistemas Operativos Distribuidos Plataforma Cliente/Servidor
Ingeniero Anyelo Quintero
Presentación Web Services Interoperability and SOAP Keith Ballinger Microsoft Corporation Alvaro Castromán Alfonso Odriozola.
Web Services Daniel Seara. Fundamentos Intercambio de información Procesamiento Sin intervención del usuario Acelerando tiempos de respuesta Normalización.
Sistemas Distribuidos basados en la web
Servicios Web. Servicios web Son programas con funcionalidad accesible a través de protocolo http que permiten la ejecución remota de métodos y funciones.
LISTAS DE CONTROL DE ACCESO (ACL)
InfoPath Ventajas y Uso.
ASP.NET es una nueva y potente tecnología para escribir páginas web dinámica. Es una importante evolución respecto a las antiguas páginas ASP de Microsoft.
Correo electrónico Internet
El término servidor hace referencia a un host que ejecuta una aplicación de software que proporciona información o servicios a otros hosts conectados.
Prof. José T. Cadenas. Aplicación Web La Internet y la Web hacen que sea fácil y atractivo poner toda la información en el cyberespacio, y la hace accesible.
/ Teléfono : Web : Build Solutions IT.
CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament d’Arquitectura de Computadors (Seminaris de CASO) Autors Sun Open Network Enviroment (Sun ONE) vs.
PROTOCOLO H T T P.
La Web y el HTTP. Antes del año 1990 Internet era usado por InvestigadoresAcadémicosEstudiantes Transferir archivos logearse remotamente Enviar/recibir.
Unidad didáctica 6 Diseño de páginas Web.
Aplicaciones Web M.C. Jorge Eduardo Ibarra Esquer
 Epo 165  Profe Luis Daniel Sánchez paz  Alumna: María Guadalupe mondragon mondragon  Grado 1  Grupo 1  2do semestre  Nl 33.
RESUMEN CAPITULO 6.
Universidad Nacional de San Juan Facultad de Ciencias Exactas, Físicas y Naturales “WEB SERVICES” Integrantes: Ene Adriana Guevara Vanina Martínez Cintia.
Sebastián Franco Henao
UNIDAD 7 WEB Y HTML.
      Protocolo de transferencia de Hipertexto, empleado para acceder a documentos de hipermedia  El protocolo nació en el CERN, como base.
 Un servidor proporciona información a los ordenadores que se conecten a él.  Cuando lo usuarios se conectan a un servidor pueden acceder a programas,
Características generales de un servicio Web.
Tema 6 – Servicio de Correo Electrónico
Introducción WWW y estándares web Jesús Torres Cejudo.
S ERVICIOS DE RED E I NTERNET T EMA 4 : I NSTALACIÓN Y ADMINISTRACIÓN DE SERVICIOS W EB Nombre: Adrián de la Torre López.
FACULTAD: CIENCIAS ECONÓMICAS Y EMPRESARIALES ASIGNATURA: GESTIÓN DE CONTENIDO ELECTRÓNICO TÍTULO: TINFOPATH - VENTAJAS Y USO. AUTORA: MARIA DANIELA TOMALÁ.
Seguridad del protocolo HTTP:
File Transfer Protocol.
TEMA: SERVICIOS WEB INTEGRANTES DEL EQUIPO: CELESTE ROMANO PEDRO VELAZQUEZ PEDRO MONTESINOS.
DESARROLLO DE APLICACIONES PARA AMBIENTES DISTRIBUÍDOS ALUMNOS: MARIANA MIGNÓN RÉDING CARLOS ANTONIO CARRASCO MARTÍNEZ PROFESOR: DR. JOSÉ BERNARDO PARRA.
Protocolos de comunicación TCP/IP
Punto 1 – Introducción al servicio Juan Luis Cano.
XML y Servicios Web Ricardo Eito Brun Sevilla, de octubre 2002.
Almacenamiento virtual de sitios web: «Hosts» virtuales
SEGURIDAD EN SERVIDORES WEB (APACHE).
Servicios Web Conjunto de aplicaciones o de tecnologías con capacidad para interoperar en la Web. Estas aplicaciones o tecnologías intercambian datos entre.
Aplicaciones Web Verano Programación de aplicaciones Web FCC-BUAP Verano 2016BMB - RAM2.
Servicios Web-SOA Aula: Fomento 05/06/2006 a 08/05/2006.
Transcripción de la presentación:

Alberto Pedroso García - Junio/2004 Victor Ricardo Díaz – Junio/2007 Web Services

Es un framework para la creación de servicios para los usuarios a través del WWW. Son aplicaciones de software que pueden ser descubiertas, descritas y accedidas basadas en XML y en los protocolos estándar de la Web en las intranet, extranet y en internet. Web Service

Forma estandarizada de integrar aplicaciones Web usando los estándares abiertos XML, SOAP, WSDL y UDDI sobre un protocolo de Internet. XML se usa para codificar la información, SOAP se usa para transferir la información, WSDL se usa para describir los servicios disponibles, UDDI se usa para listar los servicios disponibles. Los Web Services permiten que diferentes aplicaciones en diferentes plataformas se comuniquen usando XML.

Web Service Capas básicas de los webservices Descubrir (registrosUDDI, ebXML) Describir (WSDL) Acceder (SOAP) XML CAPA DE COMUNICACION (HTTP, SMTP, y otros protocolos)

Escenario común para estas tecnologías Aplicación Cliente Registro UDDI 1. Descubre el webservices WSDL Para Webservices A 2. Ver descripción de llamada a cada webservices Webservices A 3. Acceder al webservices con SOAP 4. Recibir mensaje de respuesta SOAP

Web Service & MVC Separar la lógica de negocio de la presentación es comúnmente conocido en la ingeniería de software como el paradigma Modelo – Vista – Controlador (MVC). Los webservices soportan este paradigma como se muestra en la sgte figura: Aplicación cliente webservices Controlador Modelo Vista Estilo interfaz Usuario Facilidades de comunicación entre vista y el modelo Proporciona la lógica de negocio

Web Service & Inteloperación Para inteloperar con varias compañías y aplicaciones en el negocio, se necesita un lenguaje común y un medio para resolver este problema en un ambiente dinámico. Los webservices proporcionan este medio.

SOAP SOAP (Simple Object Access Protocol) es un protocolo basado en XML usado para codificar la información en los mensajes de solicitud y respuesta en un Web Service antes de ser enviados por la red. Los mensajes SOAP son independientes de cualquier sistema operativo o protocolo y pueden ser transportados usando una diversidad de protocolos de Internet como SMTP y HTTP.

WSDL WSDL (Web Services Description Language) es un lenguaje basado en XML usado para describir las posibilidades que ofrece un servicio Web. Fue desarrollado de manera conjunta por Microsoft e IBM.

UDDI UDDI (Universal Description, Discovery and Integration) es un directorio distribuido basado en Web que permite dar a conocer los Web Services para que puedan ser descubiertos.

HTTP El Hypertext Transfer Protocol (HTTP) es un protocolo para sistemas de información de hipertextos distribuidos. Es un protocolo genérico y sin estados que puede ser usado para varias tareas que van más allá de su uso para hipertexto. Cada solicitud de un cliente HTTP (navegador) y cada respuesta de un servidor tienen 3 partes: la línea de solicitud o respuesta, el encabezamiento, el cuerpo.

HTTP El Hypertext Transfer Protocol (HTTP) es un protocolo para sistemas de información de hipertextos distribuidos. Es un protocolo genérico y sin estados que puede ser usado para varias tareas que van más allá de su uso para hipertexto. Cada solicitud de un cliente HTTP (navegador) y cada respuesta de un servidor tienen 3 partes: la línea de solicitud o respuesta, el encabezamiento, el cuerpo.

Solicitud del cliente... El cliente inicia la transacción de una página Web conectándose a un servidor HTTP por el puerto designado (80 por defecto) y envía una solicitud especificando un comando HTTP llamado método, seguido por la dirección de un documento y un número de versión de HTTP. Método URI Protocolo GET /index.htm HTTP/1.0 En el ejemplo anterior se usa el método GET para solicitar el documento /index.htm usando la versión 1.0 del protocolo.

Solicitud del cliente... Luego el cliente envía información de encabezamiento opcional al servidor indicándole su configuración y los formatos de documentos que aceptará. Toda la información del encabezamiento se envía línea a línea, cada una con un nombre y un valor de la forma: Palabra: Valor Por ejemplo, User Agent: Lynx/2.4 libwww/5.1k Accept: image/gif, image/jpeg, */* Todas estas líneas son terminadas con \r\n. El cliente envía una línea en blanco para terminar el encabezamiento.

...Solicitud del cliente Finalmente, después de enviar la solicitud y los encabezamientos, el cliente puede enviar datos adicionales. Estos datos son principalmente usados por programas CGIs que usan el método POST. Se termina la solicitud con otra línea en blanco.

Métodos de Solicitud OPTIONS – Se usa para interrogar a un servidor acerca de las capacidades que brinda, GET – Pide al servidor que devuelva el cuerpo del documento identificado en el URI, READ – Sirve para chequear si un documento ha sido actualizado desde la última solicitud, POST – Se usa para transferir un bloque de datos al servidor, PUT – Similar a subir un archivo con FTP al servidor, DELETE – Borra un documento del servidor, TRACE – Rastrea el camino de la solicitud a través de firewalls y servidores proxy.

Respuesta del Servidor... La respuesta del servidor tiene primero la línea de estado que contiene tres campos: la versión HTTP, el código de estado y la descripción del código de estado, en el siguiente formato: Protocolo Código de Estado Descripción HTTP/ OK Esto indica que el servidor usa la versión 1.0 de HTTP en su respuesta. Un código de estado de 200 significa que la solicitud del cliente fue respondida de manera exitosa. Después el servidor envía un encabezado al cliente acerca de sí mismo y del documento solicitado.

...Respuesta del Servidor Toda la información del encabezamiento se envía línea a línea, en el formato Palabra Clave: Valor. Por ejemplo, HTTP/ OK Date: Wed, 19 May :20:56 GMT Server: Apache/1.3.6 (Unix) PHP/ Si la solicitud del cliente es válida, se envía la información solicitada. Esta información puede ser una copia de un archivo o la respuesta de un programa CGI.

NuSOAP Conjunto de clases PHP que permiten a los usuarios enviar y recibir mensajes SOAP usando HTTP. Antiguamente conocido como SOAPx4, es distribuido por NuSphere Corporation ( y ha sido usado como núcleo de varios paquetes de Web Services, incluyendo PEAR-SOAP. Uno de los beneficios de NuSOAP es que no es una extensión de PHP sino que está escrito en PHP.

Arquitectura... NuSOAP emplea una clase base que brinda métodos para serialización de variables y envelopes, información de espacios de nombres y mapeo de diferentes tipos a diferentes espacios de nombres. La interacción con un servicio Web se logra usando un cliente de alto nivel llamado soapclient. Las operaciones SOAP se ejecutan pasando el nombre de la operación que queremos ejecutar al método call().

Arquitectura... Si el servicio que vamos a utilizar tiene un archivo WSDL asociado, la clase soapclient toma como argumento el URL del archivo en su constructor y usa la clase wsdl para analizar el archivo WSDL y extraer todos los datos. La clase soapclient usa estos datos para codificar los parámetros y crear el SOAP envelope cuando el usuario ejecuta una llamada al servicio. Cuando se ejecuta la llamada, la clase soapclient usa a la clase soap_transport_http para enviar el mensaje saliente y recibir el mensaje entrante. Este es analizado por la clase soap_parser

Arquitectura...

...Arquitectura Si el servicio que vamos a utilizar no tiene un archivo WSDL asociado, entonces el proceso es diferente. Al constructor de la clase soapclient se le pasa el URL del servicio. El llamado se hace con el método call, pero los detalles que eran proporcionados por el archivo WSDL deben pasarse ahora como argumentos. Los parámetros que sean tipos propietarios pueden representarse usando la clase soapval que permite a los usuarios adaptar la serialización de un parámetro.

Instalación y Configuración Descargue los archivos de Extraiga el archivo nusoap.php de su zip, Copie la clase en un directorio, Incluya la clase en su script. El camino puede ser relativo o absoluto: include_once(nusoap.php)

Ejemplo de Cliente PHP Soap... <? require_once('c:/nusoap/nusoap.php'); // Creamos una variable con la cadena que vamos a enviar $cadena = 'Juana Pérez'; // Creamos un arreglo para pasar los parámetros al cliente // SOAP $parametros = array($cadena); // Creamos un objeto cliente especificando el URL del servidor // como argumento $cliente = new soapclient('

...Ejemplo de Cliente PHP Soap // Llamamos al servicio que queremos usar en el servidor // pasándole los parámetros necesarios y recibimos la respuesta $resultado = $cliente->call('repiteCadena',$parametros); // NuSOAP ofrece detección de errores con el método getError() if (!$error = $cliente->getError()) echo "Resultado: ".$resultado; else echo "ERROR:".$error; ?>

Ejemplo de Servidor PHP Soap... <? require_once('c:/nusoap/nusoap.php'); // Creamos un objeto servidor $servidor = new soap_server(); // Registramos el servicio en el servidor $servidor->register('repiteCadena'); // Pasamos los datos de entrada al método service, que procesa // la solicitud, llama a la función apropiada, y luego formula la // respuesta $servidor->service($HTTP_RAW_POST_DATA);

...Ejemplo de Servidor PHP Soap // Servicio function repiteCadena($cadena) { if (is_string($cadena)) return $cadena; else return new soap_fault('Client','','El parámetro debe ser una cadena de caracteres'); } ?>

Manejo de Errores La clase soap_fault proporciona una forma de especificar errores y devolverlos cuando trabajamos con NuSOAP. Los argumentos pasados a su constructor son los siguientes: faultcode – Valores disponibles Client y Server. Los errores Client indican que el mensaje no contenía la información requerida para que la operación fuera exitosa. Los errores Server indican problemas de procesamiento en el servidor. faultactor – No es totalmente funcional y puede dejarse vacía. faultstring – Mensaje de error. faultdetail – Detalles del error en XML relacionados con el elemento BODY del mensaje SOAP.

Creación de Tipos Complejos SOAP permite que los usuarios definan sus propios tipos en la especificación. NuSOAP brinda la clase soapval para definir tipos. Ejemplo: $param = new soapval(,double,2.3433); El parámetro sería serializado de la siguiente forma:

Fuentes The Semantic Web por: Michael C. Daconta Leo J. Obrst Kevin T. Smith