SlideShare una empresa de Scribd logo
1 de 14
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
• Los clientes envían solicitudes de ejecución
de métodos y funciones y sus argumentos
• Los servidores responden enviando los
resultados solicitados
Servicios web
• Java EE 6 incluye “grandes” servicios web
(basados en la especificación JAX-WS) y
servicios web “reposados” (basados en la
especificación JAX-RS)
• Los servicios reposados optimizan el
ancho de banda y son más sencillos de
desarrollar
Servicios web
• Los grandes servicios web transmiten la
información a través de un protocolo
universal basado en XML, llamado SOAP
• Mediante servicios web, programas
escritos con tecnologías diferentes (Java
EE, .NET) pueden compartir información y
procedimientos de acceso a ella
estandarizados
Servicios web
• La utilización de un servicio web involucra:
– Un programa servidor capaz de publicar a
través de un registro referencias a objetos
servidores y a sus métodos y de serializar y
desserializar objetos.
– Un protocolo de publicación y acceso a
métodos y a objetos serializados.
– Un programa cliente capaz de acceder a
referencias publicadas de objetos servidores,
de hacer llamadas a sus métodos y de
serializar y desserializar otros objetos.
Servicios web
Grandes servicios web:
Requisitos
• Las clases cuyas instancias son objetos
servidores se anotan mediante @WebService.
Los métodos accesibles públicamente se anotan
mediante @WebMethod.
• Una herramienta auxiliar, wsgen, genera
artefactos necesarios para el despliegue del
servicio, incluyendo ficheros de clase que los
clientes pueden cargar a través de la red.
• Los @WebServices han de tener un
constructor sin argumentos
• Los @WebMethods tienen que ser
públicos
• Los argumentos y los objetos devueltos
por @WebMethods tienen que ser tipos
simples o Java Beans.
Ejemplo de servicio web
• Una aplicación que permite buscar
documentos que contienen una palabra y
devolverlos ordenados según el número
de veces que aparece la palabra se
puede implementar como sigue:
– Clase servidora: Buscador
• Método accesible: List<Doc> busca(palabra)
– Bean auxiliar: Doc
Ejemplo de servicio web
• @WebService
public class Buscador {…
@WebMethod
List<Doc> busca(String palabra) }
• class Doc {
int apariciones(String palabra)
… // Métodos set y get }
Esquema del funcionamiento de
servicios web
ServidorCliente
obj.f(arg)objRef.f(arg)
objobjRef
registro
Interfaz común
Programación del cliente
• Esquema de funcionamiento del cliente:
– Instanciar una referencia al servicio
– Obtener una referencia a un objeto servidor
– Ejecutar métodos …
Ejemplo de cliente
public class BuscadorClient { …
public static void main(String[] args) {
ws.client.BuscadorService serv =
new ws.client.BuscadorService();
ws.client.Buscador busc =
serv.getBuscadorPort();
List<Doc> rec = busc.busca(“servidor”);
…
Depuración
• Wsmonitor (wsmonitor.dev.java.net)
permite interceptar las llamadas de SOAP.
• Para la depuración el cliente debe hacer
las peticiones en el puerto 4040, donde
escucha Wsmonitor; éste las replica al
puerto 8080
• El monitor muestra las solicitudes y
respuestas (formato XML)

Más contenido relacionado

La actualidad más candente

Internet y sus servicios (navegador web,
Internet y sus servicios (navegador web,Internet y sus servicios (navegador web,
Internet y sus servicios (navegador web,
karyz19
 
Internet y sus servicios
Internet y sus servicios Internet y sus servicios
Internet y sus servicios
karensiis
 
Trabajo infor 1
Trabajo infor 1Trabajo infor 1
Trabajo infor 1
romii96
 

La actualidad más candente (18)

12-Unidad 3: Webservices-3.3 Inicio del Proyecto
12-Unidad 3: Webservices-3.3 Inicio del Proyecto12-Unidad 3: Webservices-3.3 Inicio del Proyecto
12-Unidad 3: Webservices-3.3 Inicio del Proyecto
 
Apache ha muerto, Viva Lighttpd
Apache ha muerto, Viva LighttpdApache ha muerto, Viva Lighttpd
Apache ha muerto, Viva Lighttpd
 
Servidores de web
Servidores de webServidores de web
Servidores de web
 
Cliente web y servidor web
Cliente web y servidor webCliente web y servidor web
Cliente web y servidor web
 
Que es una pagina web
Que es una pagina webQue es una pagina web
Que es una pagina web
 
Internet y sus servicios (navegador web,
Internet y sus servicios (navegador web,Internet y sus servicios (navegador web,
Internet y sus servicios (navegador web,
 
Internet y sus servicios
Internet y sus servicios Internet y sus servicios
Internet y sus servicios
 
Gestion de contenidos
Gestion de contenidosGestion de contenidos
Gestion de contenidos
 
Pagina web
 Pagina web Pagina web
Pagina web
 
Webapps
WebappsWebapps
Webapps
 
Entrada 10
Entrada 10Entrada 10
Entrada 10
 
Trabajo infor 1
Trabajo infor 1Trabajo infor 1
Trabajo infor 1
 
Tutorial Web Services en PHP, REST, SOAP
Tutorial Web Services en PHP, REST, SOAPTutorial Web Services en PHP, REST, SOAP
Tutorial Web Services en PHP, REST, SOAP
 
Arles
ArlesArles
Arles
 
Los Navegadores
Los NavegadoresLos Navegadores
Los Navegadores
 
Tecnologia web 2,0
Tecnologia web 2,0Tecnologia web 2,0
Tecnologia web 2,0
 
Arles
ArlesArles
Arles
 
Cms
CmsCms
Cms
 

Similar a Servicios web

[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java
Eudris Cabrera
 

Similar a Servicios web (20)

Web services
Web servicesWeb services
Web services
 
Web Services en .NET Compact Framework
Web Services en .NET Compact FrameworkWeb Services en .NET Compact Framework
Web Services en .NET Compact Framework
 
Sistemas Distribuidos basados en la Web
Sistemas Distribuidos basados en la WebSistemas Distribuidos basados en la Web
Sistemas Distribuidos basados en la Web
 
Clase17(introduccion a la web)
Clase17(introduccion a la web)Clase17(introduccion a la web)
Clase17(introduccion a la web)
 
sesion01-traspas.pdf
sesion01-traspas.pdfsesion01-traspas.pdf
sesion01-traspas.pdf
 
Servicios Web II.ppt
Servicios Web II.pptServicios Web II.ppt
Servicios Web II.ppt
 
Webservices
WebservicesWebservices
Webservices
 
Protocol HTTP
Protocol HTTPProtocol HTTP
Protocol HTTP
 
3/9 soa y web services
3/9 soa y web services3/9 soa y web services
3/9 soa y web services
 
[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java
 
Seminario html5
Seminario html5Seminario html5
Seminario html5
 
CLASE03_TEMA02_2.pptx
CLASE03_TEMA02_2.pptxCLASE03_TEMA02_2.pptx
CLASE03_TEMA02_2.pptx
 
SEVILLA Meetups29112022_sh.pptx
SEVILLA Meetups29112022_sh.pptxSEVILLA Meetups29112022_sh.pptx
SEVILLA Meetups29112022_sh.pptx
 
Desarrollo web
Desarrollo webDesarrollo web
Desarrollo web
 
Introducción a Tomcat
Introducción a TomcatIntroducción a Tomcat
Introducción a Tomcat
 
Integración de Tecnologías y Plataformas.pptx
Integración de Tecnologías y Plataformas.pptxIntegración de Tecnologías y Plataformas.pptx
Integración de Tecnologías y Plataformas.pptx
 
introduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
introduccion-a-las-aplicaciones-web-y-tecnologia-java.pptintroduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
introduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
 
Curso: Programación Web con Tecnología Java
Curso:  	Programación Web con Tecnología JavaCurso:  	Programación Web con Tecnología Java
Curso: Programación Web con Tecnología Java
 
Capitulo 2 servidores
Capitulo 2   servidoresCapitulo 2   servidores
Capitulo 2 servidores
 
Capitulo 2 servidores
Capitulo 2   servidoresCapitulo 2   servidores
Capitulo 2 servidores
 

Último

La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
JonathanCovena1
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
patriciaines1993
 
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL
MiNeyi1
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
RigoTito
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
lupitavic
 
Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficios
JonathanCovena1
 

Último (20)

Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
2024 KIT DE HABILIDADES SOCIOEMOCIONALES.pdf
2024 KIT DE HABILIDADES SOCIOEMOCIONALES.pdf2024 KIT DE HABILIDADES SOCIOEMOCIONALES.pdf
2024 KIT DE HABILIDADES SOCIOEMOCIONALES.pdf
 
Infografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfInfografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdf
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
 
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
ACTIVIDAD DIA DE LA MADRE FICHA DE TRABAJO
ACTIVIDAD DIA DE LA MADRE FICHA DE TRABAJOACTIVIDAD DIA DE LA MADRE FICHA DE TRABAJO
ACTIVIDAD DIA DE LA MADRE FICHA DE TRABAJO
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficios
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 

Servicios web

  • 2. Servicios web • Son programas con funcionalidad accesible a través de protocolo http que permiten la ejecución remota de métodos y funciones • Los clientes envían solicitudes de ejecución de métodos y funciones y sus argumentos • Los servidores responden enviando los resultados solicitados
  • 3. Servicios web • Java EE 6 incluye “grandes” servicios web (basados en la especificación JAX-WS) y servicios web “reposados” (basados en la especificación JAX-RS) • Los servicios reposados optimizan el ancho de banda y son más sencillos de desarrollar
  • 4. Servicios web • Los grandes servicios web transmiten la información a través de un protocolo universal basado en XML, llamado SOAP • Mediante servicios web, programas escritos con tecnologías diferentes (Java EE, .NET) pueden compartir información y procedimientos de acceso a ella estandarizados
  • 5. Servicios web • La utilización de un servicio web involucra: – Un programa servidor capaz de publicar a través de un registro referencias a objetos servidores y a sus métodos y de serializar y desserializar objetos. – Un protocolo de publicación y acceso a métodos y a objetos serializados. – Un programa cliente capaz de acceder a referencias publicadas de objetos servidores, de hacer llamadas a sus métodos y de serializar y desserializar otros objetos.
  • 7. Grandes servicios web: Requisitos • Las clases cuyas instancias son objetos servidores se anotan mediante @WebService. Los métodos accesibles públicamente se anotan mediante @WebMethod. • Una herramienta auxiliar, wsgen, genera artefactos necesarios para el despliegue del servicio, incluyendo ficheros de clase que los clientes pueden cargar a través de la red.
  • 8. • Los @WebServices han de tener un constructor sin argumentos • Los @WebMethods tienen que ser públicos • Los argumentos y los objetos devueltos por @WebMethods tienen que ser tipos simples o Java Beans.
  • 9. Ejemplo de servicio web • Una aplicación que permite buscar documentos que contienen una palabra y devolverlos ordenados según el número de veces que aparece la palabra se puede implementar como sigue: – Clase servidora: Buscador • Método accesible: List<Doc> busca(palabra) – Bean auxiliar: Doc
  • 10. Ejemplo de servicio web • @WebService public class Buscador {… @WebMethod List<Doc> busca(String palabra) } • class Doc { int apariciones(String palabra) … // Métodos set y get }
  • 11. Esquema del funcionamiento de servicios web ServidorCliente obj.f(arg)objRef.f(arg) objobjRef registro Interfaz común
  • 12. Programación del cliente • Esquema de funcionamiento del cliente: – Instanciar una referencia al servicio – Obtener una referencia a un objeto servidor – Ejecutar métodos …
  • 13. Ejemplo de cliente public class BuscadorClient { … public static void main(String[] args) { ws.client.BuscadorService serv = new ws.client.BuscadorService(); ws.client.Buscador busc = serv.getBuscadorPort(); List<Doc> rec = busc.busca(“servidor”); …
  • 14. Depuración • Wsmonitor (wsmonitor.dev.java.net) permite interceptar las llamadas de SOAP. • Para la depuración el cliente debe hacer las peticiones en el puerto 4040, donde escucha Wsmonitor; éste las replica al puerto 8080 • El monitor muestra las solicitudes y respuestas (formato XML)