Introducción a los Servicios Web con Java M.C. Juan Carlos Olivares Rojas Julio 2011.

Slides:



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

JEE Introducción a Java Enterprise Edition (JEE) y el modelo Enterprise Java Beans (EJB)
Web Services.
APLICACIONES DISTRIBUIDAS
Java Web Services Developer Arquitectura
Internet y tecnologías web
Servicios Web XML 03 de Junio de 2004 Fernando Alonso Blázquez.
.NET y Servicios Web David Carmona Development Advisor
WSE 2.0 (.NET Web Services Enhancements)
ADELA TORRES JONATHAN BEJARANO
Programación Interactiva Introducción a Java
Crear y consumir Servicios Web XML
ATS – Cliente .
J2EE – Java 2 Enterprise Edition
Alberto Pedroso García - Junio/2004 Victor Ricardo Díaz – Junio/2007 Web Services.
UNIVERSIDAD TECNOLÓGICA ISRAEL CARRERA DE SISTEMAS INFORMÁTICOS
Common Object Request Broker Architecture
Lenguajes Servicios Web
Cátedra Pragma Orientación a Servicios Parte I 2 © PRAGMA S.A.
Servicios Web.
UD 4: “Instalación y administración de servicios Web” Características generales de un servidor Web. Jorge De Nova Segundo.
Arquitectura Orientada a Servicios (SOA)
Introducción a Programación Concurrente
"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
Desarrollando y consumiendo Web Services con Visual FoxPro
Intercambio de información Procesamiento Sin intervención del usuario Acelerando tiempos de respuesta Normalización Entre plataformas Entre lenguajes.
Java 2 Platform Enterprise Edition
Introducción XML y WebServices.
Características generales de un servicio Web.
TIPOS DE SERVIDORES 4/2/2017 3:29 PM
Programación Web Servicio Web XML.
WSDL & UDDI Taller de Sistemas de Información 1
Sistemas Operativos Distribuidos Plataforma Cliente/Servidor
Sistemas Operativos Centralizados y Distribuidos Carlos David Zepeda.
Juan Andrada Romero Jose Domingo López López.  Introducción  Conceptos  Arquitectura JXTA  Protocolos  Demostración  Alternativas  Conclusiones.
Presentación Web Services Interoperability and SOAP Keith Ballinger Microsoft Corporation Alvaro Castromán Alfonso Odriozola.
Sincronización de Objectos Compartidos usando MatchMaker a través de Web Services Thomas Pieper DCC, Universidad de Chile.
Web Services Daniel Seara. Fundamentos Intercambio de información Procesamiento Sin intervención del usuario Acelerando tiempos de respuesta Normalización.
CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament d’Arquitectura de Computadors (Seminaris de CASO) Autors Alberto Guirao Rico Jesús Barahona Esteve.
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.
RMI Remote Method Invocation 2da. Clase del 19 de Junio
INFOPATH Mylénne Arellano N.. Microsoft InfoPath es una aplicación usada para desarrollar formularios de entrada de datos basados en XML.
J2EE – Java 2 Enterprise Edition
CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament d’Arquitectura de Computadors (Seminaris de CASO) Autors Sun Open Network Enviroment (Sun ONE) vs.
Enterprise Java Beans. EJBs Beans gestionados por un contenedor del servidor de aplicaciones para gestionar el acceso a recursos (bases de datos, colas.
Haga clic para modificar el estilo de subtítulo del patrón 28/04/09 Por ARLEDY SARRIA MOLINA NAZLY DIAZ ARIZA JHOANNA MARQUELLA DESARROLLO DE SOFTWARE.
04/02/031 Web Services Pascual Queralt Laboratorio de Sistemas de Información Facultad de Informática Universidad Politécnica de Valencia.
Universidad Nacional de San Juan Facultad de Ciencias Exactas, Físicas y Naturales “WEB SERVICES” Integrantes: Ene Adriana Guevara Vanina Martínez Cintia.
1 Web Services. 2 Definición de XML Web Services Los servicios XML Web Services son los elementos fundamentales en la evolución hacia la computación distribuida.
Desarrollo de aplicaciones empresariales con Web Services
Desarrollo de aplicaciones empresariales con Web Services
Borland User Group - Guatemala Introducción a WebServices y ejemplos de interoperabilidad entre Win32,.Net y Java Axel Canteo – Banco de Comercio Juan.
Introducción a los Webservices. Contenidos Definición Definición Protocolos que hacen posible la existencia de los Webservices Protocolos que hacen posible.
Servicios Web y Arquitectura 4+1 Vistas
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
XML y Servicios Web Ricardo Eito Brun Sevilla, de octubre 2002.
UD09 Sergio Lucas Madrid. Es un protocolo de Internet para sincronizar los relojes de los sistemas informáticos a través del ruteo de paquetes en redes.
Servicios Web con Java M.C. Juan Carlos Olivares Rojas Julio 2011.
Servicios Web Conjunto de aplicaciones o de tecnologías con capacidad para interoperar en la Web. Estas aplicaciones o tecnologías intercambian datos entre.
Patrón de diseño BROKER
Herramientas de Office. Que es Office Microsoft Office es una suite ofimática que abarca el mercado completo en Internet e interrelaciona aplicaciones.
Definición: Es un estilo de programación, su objetivo primordial es la separación de la capa de presentación, capa de negocio y la capa de datos. ARQUITECTURA.
Servicios Web-SOA Aula: Fomento 05/06/2006 a 08/05/2006.
Servicios Web XML 03 de Junio de 2004 Fernando Alonso Blázquez.
Transcripción de la presentación:

Introducción a los Servicios Web con Java M.C. Juan Carlos Olivares Rojas Julio 2011

Servicios Web Son la invocación de código remoto utilizando protocolos estandarizados. En conclusión, realizan la misma función que los sockets, RPC, RMI, Corba y demás tecnologías distribuidas. Se puede ver a los servicios Web como una analogía de un procedimiento almacenado en una base de datos.

Servicios Web Los servicios Web van de la mano de las tecnologías XML. XML nos sirve para estandarizar el marshalling de los datos. Utilizar la Web nos permite tener un puerto no bloqueando por Firewall

¿Qué son los Servicios Web? "A Web service is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP-messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards."

Características La aplicación que actúa como cliente debe conocer: –La URL del servidor remoto que ofrece el servicio, –El nombre del servicio que se solicita, y –Los parámetros que se deben enviar junto con la llamada al servicio. Estos datos se enviarán mediante HTTP

Características El servidor que ofrece el servicio web leerá los parámetros que se le han enviado, llamará a un componente o programa encargado de implementar el servicio, y los resultados que se obtengan de su ejecución serán devueltos al servidor que solicitó la ejecución del servicio.

Servicios Web Los servicios Web forman la base de la arquitectura orientada a servicios (SOA) Los servicio Web utilizan generalmente el método POST de HTTP para enviar los datos de la invocación del servicio.

Arquitectura de Servicios Web Proveedor de Servicios Registro de Servicios Solicitante de Servicio Publicar Conectar Encontrar Cliente Descripción Servicio

Servicios Web Los datos viajan envueltos en un protocolo llamado SOAP (Simple Object Access Protcol) que hace el marshalling de los datos. Una de las principales características que tienen los servicios Web radica en su ubicuidad, ya que pueden ser accedidos desde cualquier sitio, utilizando inclusive cualquier otro protocolo de transporte SMTP, FTP, etc.

SOAP Indica cómo se deben codificar los mensajes que circularán entre las dos aplicaciones. SOAP define dos modelos de mensajes: –Un mensaje de solicitud. –Un mensaje de respuesta.

Mensaje de solicitud X

Mensaje de respuesta Catalogar materiales especiales Marta de Juanes

Servicios Web Los servicios Web necesitan ser descritos (saber que parámetros reciben, devuelven) para poderlos utilizar en diversos clientes. Esta descripción se realiza a través de WSDL (Web Service Definition Language). Generalmente esas descripciones los clientes las conocen o bien, puede descubrirlas haciendo uso de UDDI (Universal Description, Discovery and Integration).

Servicios Web La UDDI no es otra cosa que un repositorio en donde se almacenan servicios Web que pueden ser invocados por diversos clientes. Muchas empresas ofrecen servicios Web como amazon, google,

¿Por qué utilizar Servicios Web? Múltiples tecnologías para hacer lo mismo: –No interoperables entre sí. –Ligados a una plataforma. DCOMCORBA RPCIIOP NDRCDR IDLOMG IDL Protocolo Formato del mensaje Descripción Windows RegistryNaming ServiceDescubrimiento Java RMI IIOP or JRMP Java Ser. Format Java RMI Registry or JNDI

Pila de protocolos de SW Redefinición de toda la pila de comunicaciones –Basado en tecnologías estándares Servicio web HTTP SOAP WSDL Protocolo Formato del mensaje Descripción UDDIDescubrimiento

Ventajas de los Servicios Web Basados en estándares. –Fácil integración. Desarrollo de actividades modularizadas. Independencia de plataforma. Puede ser usado tanto en clientes ligeros como pesados (clientes heterogéneos).

Desventajas de los Servicios Web Es que no son seguros... Es que no tienen estado... Es que no son transaccionales... “Los servicios Web no hacen más que reinventar la rueda, pero esta vez usando XML”.

Protocolos Servicios Web Comunicaciones ubicuas: Internet Formato de datos universal:XML Interacción de servicios:SOAP Publicar, buscar servicios: UDDI Descripción de servicios:WSDL

Servicios Web con Java Los servicios Web con Java se manejan dentro del JWSDP que apartir del JDK 1.4 ya viene integrado de forma nativa al JSE Para implementar un Servicio Web se ocupa de un Servidor Web.

Servicios Web con Java El servidor Web debe soportar Servicios Web. Generalmente se agregan a servidores Web tradicionales contenedores de servicios Web (axis, metro) Para poder consumir un servicio Web sólo se ocupa conocer la implementación del servicio y que esté activo.

Servicios Web con Java Los Servicios Web se pueden manejar fácilmente utilizando IDEs como Netbeans o Eclipse. Las tecnologías que se involucran para el manejo de servicios Web con Java son muchas: JAX-WS, JAX-B, WS-Metadata, JAX-RS, etc.

23 Arquitectura Java WS

Comunicación WS 24

JAX-WS Es la API más reciente de Java para el manejo de Servicios Web. A partir de JSE 6.0 se encuentra de manera nativa, ya que anteriormente estaba en JEE.

JAX-WS Reemplaza la anterior API de JAX RPC. Incluye nuevos paquetes como: javax.xml.ws, javax.xml.soap,javax.jws Utiliza anotaciones para el manejo de servicios Web.

JAX-WS La indica que una clase se expondrá como Servicio indica que un método se expondrá como interfaz pública a utilizarse en un servicio Web.

JAX-WS Las anotaciones pueden recibir parámetros. Por puede ir acompañado de parámetros como name, serviceName, targetNamespace, portName, entre otros.

JAX-WS Crear Servicios Web es sencillo teniendo implementado la lógica del negocio. Solo es necesario agregar el paquete: import javax.jws.WebService;

JAX-WS La clase del servicio se le A continuación se muestra un ejemplo tomado del tutorial oficial de oracle: package hello; public class CircleFunctions {

JAX-WS public double getArea(double radius) { return java.lang.Math.PI * (r * r); } public double getCircumference(double radius) { return 2 * java.lang.Math.PI * r; } }

JAX-WS El servicio publicado quedaría: package hello; import public class CircleFunctions { public double getArea(double r) { return java.lang.Math.PI * (r * r); }

JAX-WS public double getCircumference(double r) { return 2 * java.lang.Math.PI * r; } } Se necesita publicar el método, esto se hace con el método publish() de la clase Endpoint:

JAX-WS import javax.xml.ws.Endpoint; public static void main(String[] args) { Endpoint.publish( " xample/circlefunctions", new CircleFunctions()); }

JAX-WS Ahora se pueden compilar los códigos fuentes pero antes es necesario crear la estructura del servicio a treavés de: Wsgen –cp – hello.CircleFunctions

JAX-WS Para comprobar que el servicio Web está corriendo se debe de visitar: ample/circlefunctions?WSDLhttp://localhost:8080/WebServiceEx ample/circlefunctions?WSDL Que es la descripción del servicio

JAX-WS En Netbeans los servicios Web se implementan dentro de proyectos Web. Muchas de estas tareas se simplifican con NetBeans. Los Clientes que consumen servicios web se puden hacer desde cualquier tipo de proyecto

JAX-B Es la Arquitectura de Java para el “ligado” (binding) en XML. Es utilizado para el marshalling de los datos de Java con otros lenguajes utilizando generalmente XMLSchema o DTD para representar los datos que se utilizan en WSDL y SOAP.

JAX-B Se pueden utilizar datos primitivos o definidos por el usuario (datos complejos). Está API depende de modelos de lectura DOM o SAX de los archivos de XML.

Tipos de Datos Básicos XMLSchema Java xsd:stringjava.lang.String xsd:integerjava.math.BigInteger xsd:intint xsd.longlong xsd:shortshort xsd:decimaljava.math.BigDecimal xsd:floatfloat

Dudas