SlideShare una empresa de Scribd logo
1 de 33
Servicios Web
Intuitivamente es similar a un sitio
web, pero no existe interacción con
una persona a través de un web
browser, sino que la interacción es
entre aplicaciones
"Un Web Service es un componente de
software que se comunica con otras
aplicaciones codificando los mensaje en
XML y enviando estos mensaje a través de
protocolos estándares de Internet tales
como el Hypertext Transfer Protocol (HTTP).
¿Cómo Funcionan los Servicios Web?
Requisitos de un Web Service:
 Interoperabilidad: Un servicio remoto debe permitir su
utilización por clientes de otras plataformas.
 Amigabilidad con Internet: La solución debe poder
funcionar para soportar clientes que accedan a los servicios
remotos desde internet.
 Interfaces fuertemente tipadas: procedimentales.
Más aún, los tipos de datos definidos en el servicio remoto
deben poderse corresponder razonablemente bien con los
tipos de datos de la mayoría de los lenguaje de
programación.
Requisitos de un Web Service:
 Posibilidad de aprovechar los estándares de
Internet existentes: La implementación del servicio
remoto debería aprovechar estándares de Internet
existentes tanto como sea posible y evitar reinventar
soluciones a problema que ya se han resuelto.
 Soporte para cualquier lenguaje: Un cliente
debería ser capaz de implementar un nuevo servicio
Web existente independientemente del lenguaje de
programación en el que se halla escrito el cliente.
Bloques Constructivos de Servicios Web:
 Descubrimiento: La aplicación cliente que necesita
acceder a la funcionalidad que expone un Servicio Web
necesita una forma de resolver la ubicación de servicio
remoto. Se logra mediante un proceso llamado, normalmente
descubrimiento
 Descripción: Una vez que se ha resuelto el extremo de un
servicio Web dado, el cliente necesita suficiente información
para interactuar adecuadamente con el mismo.
 Formato del mensaje: Para el intercambio de datos, el
cliente y el servidor tienen que estar de acuerdo en un
mecanismo común de codificación y formato de mensaje.
 Codificación: Los datos que se trasmiten entre el
cliente y el servidor necesitan codificarse en un cuerpo
de mensaje.
 Transporte: Una vez se ha dado formato al mensaje y
se han serializado los datos en el cuerpo del mensaje se
debe transferir entre el cliente y el servidor utilizando
algún protocolo de transporte.
SOAP - Protocolo simple de acceso a objetos
 Es un protocolo basado en XML, que permite la interacción
entre varios dispositivos y que tiene la capacidad de transmitir
información compleja. Los datos pueden ser transmitidos a
través de HTTP , SMTP , etc.
SOAP especifica el formato de los mensajes de la siguiente forma:
 envelope (envoltura): Es el elemento raíz del mensaje para
describir su contenido y la forma de procesarlo.
 header (encabezado): Es la información de identificación del
contenido. Un grupo de reglas de codificación para expresar las
instancias de tipos de datos definidos por la aplicación.
 body (cuerpo): Es el contenido del mensaje. Una convención para
representar las llamadas y las respuestas a procedimientos
remotos.
Anatomía de un mensaje SOAP
SOAP y HTTP
Encabezado
HTTP
Envoltura
Header (opcional)
Cuerpo
Algunas de las Ventajas de SOAP
 No esta asociado con ningún lenguaje
 No se encuentra fuertemente asociado a ningún
protocolo de transporte
 Aprovecha los estándares existentes en la industria
 Permite la interoperabilidad entre múltiples entornos
 Ampliamente aceptado
 RPC: Consiste en pasarle parámetros a un procedimiento remoto
en algún lenguaje determinado (java, c++, etc) utilizando un
esquema de comunicación xml via HTTP.
RPC usando SOAP
RPC usando SOAP
Para realizar una invocación RPC es
necesario conocer:
 La ubicación del objeto remoto
 El nombre del objeto remoto
 El nombre del método
 Los parámetros del método
Descripción: WSDL
Lenguaje de Descripción de Servicios Web
 WSDL representa una especie de contracto entre el
proveedor y el que solicita. O sea permite que un
servicio y un cliente establezcan un acuerdo en lo que
se refiere a los detalles de transporte de mensajes y su
contenido, a través de un documento procesable por
dispositivos.
WSDL
Distingue claramente los mensajes de los puertos
 Los mensajes (la sintaxis y semántica que necesita un
servicio Web) son siempre abstractos
 Los puertos (las direcciones de red en las que se
invoca al servicio Web) son siempre concretos
Existen tres componentes principales de esta interfaz abstracta:
 El vocabulario
 El mensaje
 La interacción
Descripción abstracta:
Descripción abstracta:
Los elementos utilizados para esto son:
 Types: contenedor de definiciones del tipo de datos que
utiliza algún sistema de tipos (por ejemplo XSD).
 Message: definición abstracta y escrita de los datos que
se están comunicando.
 Operation: descripción abstracta de una acción
admitida por el servicio.
 Port Type: conjunto abstracto de operaciones admitidas
por uno o más puntos finales.
Ejemplo:
Información concreta de enlace
Para completar la descripción de una interacción cliente-
servidor se necesita saber:
 Qué protocolo de comunicación se va utilizar (como
SOAP sobre HTTP)
 Como conseguir la interacción del servicio con este
protocolo
 Donde termina la comunicación (la dirección de red).
Para eso se utilizan los siguientes elementos:
 Binding: especificación del protocolo y del
formato de datos para un tipo de puerto
determinado.
 Port: punto final único que se define como la
combinación de un enlace y una dirección de
red.
 Service: colección de puntos finales
relacionados.
Información concreta de enlace
Ejemplo:
Objetivo de WSDL
 El objetivo de WSDL es el de liberar a los
usuarios y desarrolladores de la necesidad
de recordar o entender todos los detalles de
acceso a los servicios, solo es necesario una
descripción WSDL para poder acceder a
estos.
Descubrimiento: UDDI
 Una vez creado el servicio web el siguiente
paso consiste en definir cómo se dará a
conocer el servicio Web para que los clientes
interesados puedan descubrirlo fácilmente y
utilizarlo en sus aplicaciones.
Descubrimiento: UDDI
 UDDI es un registro público diseñado para
almacenar de forma estructurada información
sobre empresas y los servicios que éstas
ofrecen. A través de UDDI, se puede publicar y
descubrir información de una empresa y de sus
servicios.
En UDDI codifica tres tipos de información acerca de un
servicio web
Sección blanca - dirección, contacto y otros
identificadores conocidos.
Sección amarilla - categorización industrial basada en
taxonomías.
Sección verde - información técnica sobre los servicios
que aportan las propias empresas.
 La estructura que almacena la sección
blanca es de tipo bussinessEntity, esta
estructura describe a un proveedor de
servicios Web.
Sección Blanca
Sección Amarilla
 Para almacenar la sección amarilla se utiliza
la estructura tipo bussinessService, que
describe una familia de servicios Web
ofrecidos por el proveedor descrito en el
bussinnessEntity.
Ejemplo:
Sección Verde
 La sección verde se almacena entre las
estructuras tipo bindingTemplate, que
describen la información técnica de acceso a
un servicio Web concreto.
Ejemplo:
Información de la plantilla de enlace
 Dirección donde el servicio puede ser accedido, esta
dirección podría ser una url, una dirección de email, o un
numero de teléfono
 tModelInstanceDetaills, el cual provee la descripción
técnica del servicio
Para Concluir:
 WSDL: Ofrece un modo formal de definir
servicios web, independientemente del
proveedor.
 UDDI: Proporciona una amplia infraestructura
estandarizada que permite al usuario
describir y descubrir servicios web.

Más contenido relacionado

Similar a Servicios web service api rest en netbeans

Similar a Servicios web service api rest en netbeans (20)

Servicios web
Servicios webServicios web
Servicios web
 
Servicios Web
Servicios WebServicios Web
Servicios Web
 
Wsdl bpel4ws chumpitaz
Wsdl bpel4ws chumpitazWsdl bpel4ws chumpitaz
Wsdl bpel4ws chumpitaz
 
Servicios web xml
Servicios web xmlServicios web xml
Servicios web xml
 
Semana 04 protocolo y seguridad
Semana 04 protocolo y seguridadSemana 04 protocolo y seguridad
Semana 04 protocolo y seguridad
 
Tema 3 1
Tema 3 1Tema 3 1
Tema 3 1
 
WSDL.pdf
WSDL.pdfWSDL.pdf
WSDL.pdf
 
WCF for Dummies (Parte II)
WCF for Dummies (Parte II)WCF for Dummies (Parte II)
WCF for Dummies (Parte II)
 
Charla Web Services
Charla Web ServicesCharla Web Services
Charla Web Services
 
Semana 15 -servicios_web
Semana 15 -servicios_webSemana 15 -servicios_web
Semana 15 -servicios_web
 
Capa de Aplicación
Capa de Aplicación Capa de Aplicación
Capa de Aplicación
 
Java2 servicios web
Java2 servicios webJava2 servicios web
Java2 servicios web
 
SOA y Web Services
SOA y Web ServicesSOA y Web Services
SOA y Web Services
 
Ugmmontoya
UgmmontoyaUgmmontoya
Ugmmontoya
 
Pruebas de Servicios Web, ¿Codificar o No Codificar?
Pruebas de Servicios Web, ¿Codificar o No Codificar?Pruebas de Servicios Web, ¿Codificar o No Codificar?
Pruebas de Servicios Web, ¿Codificar o No Codificar?
 
C:\Documents And Settings\Pc 09\Mis Documentos\Servidores Web
C:\Documents And Settings\Pc 09\Mis Documentos\Servidores WebC:\Documents And Settings\Pc 09\Mis Documentos\Servidores Web
C:\Documents And Settings\Pc 09\Mis Documentos\Servidores Web
 
02 - Servicios SOAP.pptx
02 - Servicios SOAP.pptx02 - Servicios SOAP.pptx
02 - Servicios SOAP.pptx
 
Servicios web xml
Servicios web xmlServicios web xml
Servicios web xml
 
Servicios web xml
Servicios web xmlServicios web xml
Servicios web xml
 
Web Services
Web ServicesWeb Services
Web Services
 

Último

INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAdanielaerazok
 
Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenadanielaerazok
 
Guia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdfGuia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdflauradbernals
 
12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdfedwinmelgarschlink2
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenajuniorcuellargomez
 
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señorkkte210207
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfisrael garcia
 
Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webDecaunlz
 
Las redes sociales en el mercado digital
Las redes sociales en el mercado digitalLas redes sociales en el mercado digital
Las redes sociales en el mercado digitalNayaniJulietaRamosRa
 

Último (9)

INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
 
Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalena
 
Guia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdfGuia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdf
 
12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalena
 
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
 
Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la web
 
Las redes sociales en el mercado digital
Las redes sociales en el mercado digitalLas redes sociales en el mercado digital
Las redes sociales en el mercado digital
 

Servicios web service api rest en netbeans

  • 2. Intuitivamente es similar a un sitio web, pero no existe interacción con una persona a través de un web browser, sino que la interacción es entre aplicaciones "Un Web Service es un componente de software que se comunica con otras aplicaciones codificando los mensaje en XML y enviando estos mensaje a través de protocolos estándares de Internet tales como el Hypertext Transfer Protocol (HTTP).
  • 3. ¿Cómo Funcionan los Servicios Web?
  • 4. Requisitos de un Web Service:  Interoperabilidad: Un servicio remoto debe permitir su utilización por clientes de otras plataformas.  Amigabilidad con Internet: La solución debe poder funcionar para soportar clientes que accedan a los servicios remotos desde internet.  Interfaces fuertemente tipadas: procedimentales. Más aún, los tipos de datos definidos en el servicio remoto deben poderse corresponder razonablemente bien con los tipos de datos de la mayoría de los lenguaje de programación.
  • 5. Requisitos de un Web Service:  Posibilidad de aprovechar los estándares de Internet existentes: La implementación del servicio remoto debería aprovechar estándares de Internet existentes tanto como sea posible y evitar reinventar soluciones a problema que ya se han resuelto.  Soporte para cualquier lenguaje: Un cliente debería ser capaz de implementar un nuevo servicio Web existente independientemente del lenguaje de programación en el que se halla escrito el cliente.
  • 6. Bloques Constructivos de Servicios Web:
  • 7.  Descubrimiento: La aplicación cliente que necesita acceder a la funcionalidad que expone un Servicio Web necesita una forma de resolver la ubicación de servicio remoto. Se logra mediante un proceso llamado, normalmente descubrimiento  Descripción: Una vez que se ha resuelto el extremo de un servicio Web dado, el cliente necesita suficiente información para interactuar adecuadamente con el mismo.  Formato del mensaje: Para el intercambio de datos, el cliente y el servidor tienen que estar de acuerdo en un mecanismo común de codificación y formato de mensaje.
  • 8.  Codificación: Los datos que se trasmiten entre el cliente y el servidor necesitan codificarse en un cuerpo de mensaje.  Transporte: Una vez se ha dado formato al mensaje y se han serializado los datos en el cuerpo del mensaje se debe transferir entre el cliente y el servidor utilizando algún protocolo de transporte.
  • 9. SOAP - Protocolo simple de acceso a objetos  Es un protocolo basado en XML, que permite la interacción entre varios dispositivos y que tiene la capacidad de transmitir información compleja. Los datos pueden ser transmitidos a través de HTTP , SMTP , etc. SOAP especifica el formato de los mensajes de la siguiente forma:  envelope (envoltura): Es el elemento raíz del mensaje para describir su contenido y la forma de procesarlo.  header (encabezado): Es la información de identificación del contenido. Un grupo de reglas de codificación para expresar las instancias de tipos de datos definidos por la aplicación.  body (cuerpo): Es el contenido del mensaje. Una convención para representar las llamadas y las respuestas a procedimientos remotos.
  • 10. Anatomía de un mensaje SOAP
  • 12. Algunas de las Ventajas de SOAP  No esta asociado con ningún lenguaje  No se encuentra fuertemente asociado a ningún protocolo de transporte  Aprovecha los estándares existentes en la industria  Permite la interoperabilidad entre múltiples entornos  Ampliamente aceptado
  • 13.  RPC: Consiste en pasarle parámetros a un procedimiento remoto en algún lenguaje determinado (java, c++, etc) utilizando un esquema de comunicación xml via HTTP. RPC usando SOAP
  • 14. RPC usando SOAP Para realizar una invocación RPC es necesario conocer:  La ubicación del objeto remoto  El nombre del objeto remoto  El nombre del método  Los parámetros del método
  • 15. Descripción: WSDL Lenguaje de Descripción de Servicios Web  WSDL representa una especie de contracto entre el proveedor y el que solicita. O sea permite que un servicio y un cliente establezcan un acuerdo en lo que se refiere a los detalles de transporte de mensajes y su contenido, a través de un documento procesable por dispositivos.
  • 16. WSDL Distingue claramente los mensajes de los puertos  Los mensajes (la sintaxis y semántica que necesita un servicio Web) son siempre abstractos  Los puertos (las direcciones de red en las que se invoca al servicio Web) son siempre concretos
  • 17. Existen tres componentes principales de esta interfaz abstracta:  El vocabulario  El mensaje  La interacción Descripción abstracta:
  • 18. Descripción abstracta: Los elementos utilizados para esto son:  Types: contenedor de definiciones del tipo de datos que utiliza algún sistema de tipos (por ejemplo XSD).  Message: definición abstracta y escrita de los datos que se están comunicando.  Operation: descripción abstracta de una acción admitida por el servicio.  Port Type: conjunto abstracto de operaciones admitidas por uno o más puntos finales.
  • 20. Información concreta de enlace Para completar la descripción de una interacción cliente- servidor se necesita saber:  Qué protocolo de comunicación se va utilizar (como SOAP sobre HTTP)  Como conseguir la interacción del servicio con este protocolo  Donde termina la comunicación (la dirección de red).
  • 21. Para eso se utilizan los siguientes elementos:  Binding: especificación del protocolo y del formato de datos para un tipo de puerto determinado.  Port: punto final único que se define como la combinación de un enlace y una dirección de red.  Service: colección de puntos finales relacionados. Información concreta de enlace
  • 23. Objetivo de WSDL  El objetivo de WSDL es el de liberar a los usuarios y desarrolladores de la necesidad de recordar o entender todos los detalles de acceso a los servicios, solo es necesario una descripción WSDL para poder acceder a estos.
  • 24. Descubrimiento: UDDI  Una vez creado el servicio web el siguiente paso consiste en definir cómo se dará a conocer el servicio Web para que los clientes interesados puedan descubrirlo fácilmente y utilizarlo en sus aplicaciones.
  • 25. Descubrimiento: UDDI  UDDI es un registro público diseñado para almacenar de forma estructurada información sobre empresas y los servicios que éstas ofrecen. A través de UDDI, se puede publicar y descubrir información de una empresa y de sus servicios.
  • 26. En UDDI codifica tres tipos de información acerca de un servicio web Sección blanca - dirección, contacto y otros identificadores conocidos. Sección amarilla - categorización industrial basada en taxonomías. Sección verde - información técnica sobre los servicios que aportan las propias empresas.
  • 27.  La estructura que almacena la sección blanca es de tipo bussinessEntity, esta estructura describe a un proveedor de servicios Web. Sección Blanca
  • 28. Sección Amarilla  Para almacenar la sección amarilla se utiliza la estructura tipo bussinessService, que describe una familia de servicios Web ofrecidos por el proveedor descrito en el bussinnessEntity.
  • 30. Sección Verde  La sección verde se almacena entre las estructuras tipo bindingTemplate, que describen la información técnica de acceso a un servicio Web concreto.
  • 32. Información de la plantilla de enlace  Dirección donde el servicio puede ser accedido, esta dirección podría ser una url, una dirección de email, o un numero de teléfono  tModelInstanceDetaills, el cual provee la descripción técnica del servicio
  • 33. Para Concluir:  WSDL: Ofrece un modo formal de definir servicios web, independientemente del proveedor.  UDDI: Proporciona una amplia infraestructura estandarizada que permite al usuario describir y descubrir servicios web.