Clase XII PDF

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 21

Unidad XII – Servicios Web

Profesora: Ing. Nilsa Noguera


Servicios Web
 Un servicio Web es un componente de software
almacenado en una computadora, el cual se puede utilizar
mediante llamadas a métodos desde una aplicación (u
otro componente de software) en otra computadora, a
través de una red.
 Los servicios Web se comunican mediante el uso de
tecnologías como XML y HTTP. Varias APIs de Java
facilitan los servicios Web.
Servicios Web
 Los servicios Web proporcionan una manera de crear
aplicaciones que pueden ser accedidas y utilizadas por
diferentes clientes utilizando diferentes plataformas a
través de internet o intranet.
 Permite invocar funciones de otras aplicaciones
independientemente de cómo se hayan creado las
aplicaciones
 Permite integración de aplicaciones
Fundamentos de los Servicios Web en Java
 La computadora en la que reside un servicio Web se
conoce como equipo remoto o servidor. La aplicación
que accede al servicio Web envía la llamada a un método
a través de una red al equipo remoto, el cual procesa la
llamada y devuelve una respuesta a la aplicación, a través
de la red.
 En Java, un servicio Web se implementa como una clase.
La clase que representa el servicio Web reside en un
servidor; no forma parte de la aplicación cliente.
Fundamentos de los Servicios Web en Java
 Al proceso de hacer que un servicio Web esté disponible para
recibir peticiones de los clientes se le conoce como publicación
de un servicio Web; al proceso de utilizar un servicio Web desde
una aplicación cliente se le conoce como consumo de un servicio
Web.
 Una aplicación que consume un servicio Web consiste de dos
partes: un objeto de una clase proxy para interactuar con el
servicio Web y una aplicación cliente que consume el servicio Web,
invocando a los métodos en el objeto de la clase proxy.
 El código cliente invoca los métodos en el objeto proxy, el cual se
encarga de los detalles de la comunicación con el servicio Web
(como el paso de los argumentos a los métodos del servicio Web y
la recepción de los valores de retorno del servicio Web) por el
cliente.
 El servicio Web realiza la tarea correspondiente y devuelve los
resultados al objeto proxy, el cual devuelve entonces los resultados
al código cliente.
Interacción entre un servicio Web y su
cliente
Servicios Web SOAP
 SOAP es un protocolo estándar que se creó
originalmente para permitir la comunicación entre las
aplicaciones que se diseñaban con diferentes lenguajes y
en diferentes plataformas.
 Como es un protocolo, impone reglas integradas que
aumentan la complejidad y la sobrecarga, lo cual puede
retrasar el tiempo que tardan las páginas en cargarse.
 Los estándares de cumplimiento integrados incluyen
la seguridad, la atomicidad, la uniformidad, el aislamiento y
la durabilidad (ACID), que forman un conjunto de
propiedades que garantizan operaciones confiables de las
bases de datos.
Servicios Web SOAP
 Las especificaciones comunes de los servicios web incluyen lo
siguiente:
 Seguridad de los servicios web (WS-Security): estandariza la
forma de proteger y transferir los mensajes usando identificadores
únicos llamados tokens.
 Mensajería segura de los servicios web (WS-
ReliableMessaging): estandariza el control de errores entre
mensajes que se transfieren en infraestructuras de TI poco
confiables.
 Abordaje de los servicios web (WS-Addressing): paquetes que
enrutan la información como metadatos dentro de los encabezados
SOAP, en lugar de mantener la información en un lugar más profundo
de la red.
 Lenguaje de descripción de los servicios web
(WSDL): describe qué hace un servicio web, así como dónde
comienza y termina.
Servicios Web SOAP
 El envío de una solicitud de datos a una API de SOAP se puede
administrar a través de cualquiera de los protocolos de la capa
de la aplicación:
 HTTP (para los exploradores web),
 SMTP (para el correo electrónico),
 TCP, entre otros.
 Sin embargo, una vez que se recibe una solicitud, los mensajes
SOAP de retorno deben ser documentos XML, que es un
lenguaje de marcado que comprenden las personas y las
máquinas.
 Una solicitud completa a una API de SOAP no se almacena en
caché por un navegador, por lo que no se puede acceder a ella
después sin reenviarla a la API.
Anotaciones del Servicio Web SOAP
Anotaciones del Servicio Web SOAP
Servicios Web Rest
 REST es un conjunto de principios arquitectónicos que se ajusta a
las necesidades de los servicios web y las aplicaciones
móviles ligeros.
 Cuando se envía una solicitud de datos a una API de REST, se suele
hacer a través de un protocolo de transferencia de hipertexto,
comúnmente denominado HTTP.
 Una vez que reciben la solicitud, las API diseñadas para REST
(conocidas como API o servicios web de RESTful) pueden devolver
mensajes en distintos formatos: HTML, XML, texto sin formato y
JSON.
 El formato preferido para los mensajes es la notación de objetos
JavaScript (JSON), ya que, a pesar de su nombre, puede leerlo
cualquier lenguaje de programación, es ligero y lo comprenden tanto
las personas como las máquinas.
 De esta forma, las API de RESTful son más flexibles y se pueden
configurar con mayor facilidad.
Servicios Web Rest
 Se considera que una aplicación es RESTful si cumple con seis pautas
arquitectónicas. Una aplicación de RESTful debe tener lo siguiente:
 Una arquitectura cliente-servidor compuesta por clientes, servidores y
recursos.
 Una comunicación cliente-servidor sin estado, lo cual significa que el
contenido de los clientes no se almacena en el servidor entre las
solicitudes, sino que la información sobre el estado de la sesión queda en
el cliente.
 Datos que pueden almacenarse en caché para eliminar la necesidad de
algunas interacciones cliente-servidor.
 Una interfaz uniforme entre elementos para que la información se
transfiera de forma estandarizada, en lugar de ser específica para las
necesidades de cierta aplicación.
 Una restricción del sistema en capas, en el que las interacciones cliente-
servidor pueden estar mediadas por capas jerárquicas.
 Código según se solicite, lo que permite que los servidores amplíen las
funciones de un cliente al transferir el código ejecutable (esto también
reduce la visibilidad, así que es una pauta opcional).
Servicios Rest
 REST (Representational State Transfer) es un estilo de
arquitectura para desarrollar servicios. Los servicios web
que siguen este estilo deben cumplir con las siguientes
premisas:
 Cliente/Servidor : Como servicios web son cliente servidor
y definen un interface de comunicación entre ambos separando
completamente las responsabilidades entre ambas partes.
Servicios Rest
 Sin estado : Son servicios web que no mantienen estado
asociado al cliente .Cada petición que se realiza a ellos es
completamente independiente de la siguiente . Todas las
llamadas al mismo servicio serán idénticas.
Servicios Rest
 Cache : El contenido de los servicios web REST ha se puede
cachear de tal forma que una vez realizada la primera petición
al servicio el resto puedan apoyarse en la cache si fuera
necesario.
Servicios Rest
 Servicios Uniformes :Todos lo servicios REST compartirán una
forma de invocación y métodos uniforme utilizando los métodos
GET,POST,PUT ,DELETE
 Arquitectura en Capas: Todos los servicios REST están
orientados hacia la escalabilidad y un cliente REST no será capaz de
distinguir entre si esta realizando una petición directamente al
servidor , o se lo esta devolviendo un sistema de caches intermedio
o por ejemplo existe un balanceador que se encarga de redirigirlo a
otro servidor.
Anotaciones del Servicio Rest
Rest versus SOAP

También podría gustarte