4D v16.3

Introducción

Inicio

 
4D v16.3
Introducción

Introducción  


 

Un servicio web es un conjunto de funciones agrupadas como una entidad y publicado en una red. Estas funciones pueden ser llamadas y utilizadas por toda aplicación compatible con servicios web y conectada a la misma red. Desde luego, los servicios web están diseñados para ser utilizados en su máxima capacidad en el contexto de publicación en Internet.

Los servicios web pueden efectuar todo tipo de tareas, tales como hacer seguimiento a los paquetes de un transportador, comercio electrónico, control de valores, monitorear mercados de valores, etc.

El programa que publica el servicio se llama “servidor.” Toda aplicación compatible con servicios web puede utilizar una o más de estas funciones; este es el programa “cliente”.
La ventaja de los servicios web es su interoperabilidad con diferentes sistemas de información: no es necesario que los programas servidor y cliente sean compatibles entre si para que el sistema funcione. Desde el punto de vista de la aplicación cliente, un servicio web es una “caja negra”: los valores se envían a ella y se devuelven otros valores resultantes del proceso. 

Los servicios web propuestos por el servidor pueden ser públicos o privados. Hay un gran número de servicios web públicos en Internet que toda aplicación pueden solicitar gratuitamente.

Mantenida por el W3C (World Wide Web Consortium, autoridad reguladora de Internet) y las grandes empresas del sector de la industria informática, los servicios web representan una solución de conectividad confiable, duradera y evolutiva.

Los servicios web transitan esencialmente utilizando el protocolo de transporte HTTP.

  • SOAP: los servicios web utilizan un protocolo de comunicación de alto nivel “abierto” llamado SOAP (Simple Object Access Protocol). Este protocolo está basado completamente en el lenguaje XML, tanto a nivel de la estructura del mensaje (sobre) como de los datos intercambiados. El funcionamiento de este protocolo está definido por los RFCs (Request for Comment, documentos que estandarizan varios aspectos de Internet), lo cual garantiza una amplia compatibilidad.
    El principio de funcionamiento de un servicio web es el siguiente: un cliente del servicio web envía una petición en XML al servidor vía el protocolo SOAP. El servidor analiza la solicitud, efectúa la operación solicitada y devuelve su respuesta utilizando el mismo protocolo y lenguaje.
  • WSDL: los servidores de servicios web generalmente publican un WSDL (Web Service Description Language) con el fin de definir las especificaciones de acceso a los servicios ofrecidos. El WSDL permite a los servidores de servicios web publicar “el modo de uso” de los servicios ofrecidos (URLs, listas de métodos, parámetros, etc.) y viene en forma de una archivo XML, generalmente creado por la misma aplicación servidor. Este archivo no es obligatorio.
  • UDDI: el UDDI (Universal Description Discovery and Integration) es una base de datos mundial que lista todos los servicios web públicos.
    Tenga en cuenta que no es obligatorio hacer público un servicio web y que en la mayoría de los casos no es necesario.

4D puede utilizarse como un servidor y/o cliente de servicios web. La integración de servicios web en 4D es simple y segura: varios parámetros permiten controlar de forma precisa las condiciones de publicación y de suscripción.

Puede publicar todo método de proyecto como un servicio web, sin hacer una modificación mayor. La publicación es una propiedad del método:

Nota: la publicación de servicios web con 4D requiere de una licencia específica: la licencia SOAP.

El servidor web de 4D maneja automáticamente la gestión de servicio como también la publicación y el mantenimiento del archivo WSDL. El análisis del contenido XML de las peticiones, el formato de los parámetros, el envío de resultados, etc., son efectuados por 4D sin que sea necesaria una programación específica.

Si quiere personalizar el procesamiento de las peticiones, puede utilizar los comandos específicos del lenguaje de 4D. Consulte la sección Servicios Web (Servidor) en el manual Lenguaje de 4D.

Sus bases de datos pueden utilizar todo tipo de servicio web ofrecido en Internet o en su red. La mayoría de las veces, el asistente de servicios web le permitirá utilizar instantáneamente cualquier servicio web, con un mínimo de programación:

Utilizar un servicio web en 4D consiste en enviar solicitudes por la red y recuperar una respuesta. Los métodos “proxy” están encargados de estas operaciones. La creación de métodos proxy de llamada de servicios web es completamente automática y puede realizarse sin programación. Simplemente llame estos métodos en su código.

Es posible personalizar estos métodos utilizando los comandos del lenguaje de 4D, de la misma forma que para la parte servidor (ver Servicios Web (Cliente)).

Los servicios web publicados por 4D heredan los mecanismos de seguridad establecidos por el servidor web de 4D. Las peticiones de servicios web se benefician de los mismos parámetros que las solicitudes web clásicas: contraseñas, métodos de base On Web Authentication y On Web Connection, utilización del protocolo SSL, etc.

Adicionalmente, configuraciones específicas (por ejemplo los comandos SOAP get info y Is SOAP request) permiten controlar de forma precisa la publicación de los servicios web.

Del lado del cliente, la conexión a los servidores de servicios web se puede llevar a cabo en modo seguro utilizando SSL. El comando WEB SERVICE AUTHENTICATE también permite la conexión a los servidores que requieren autenticación.

La capa de comunicación de los servicios web (asegura el transporte, el llamado de los servicios y la seguridad de los intercambios) puede funcionar en dos modos diferentes: el modo RPC (Remote Procedure Call) y el modo DOC (Mensaje/Documento). La diferencia entre los modos está en el nivel de construcción de las solicitudes y las respuestas para el servidor y el cliente. El modo DOC es necesario para ciertas aplicaciones clientes.

4D soporta el modo RPC y el modo DOC:

  • Del lado del cliente, este soporte es transparente vía el asistente de servicios web. El código generado se adapta automáticamente al modo de publicación.
  • Del lado del servidor, este soporte también es transparente: los métodos son publicados automáticamente como servicios web en modo DOC y en modo RPC. La elección del modo se lleva a cabo vía el URL del WSDL (consulte Generación de WSDL).
    • Para publicar un servicio web 4D en modo RPC, sólo necesita utilizar el siguiente URL para el WSDL:
      http://ServerAddress/4DWSDL
      El servidor 4D se encarga de procesar las solicitudes y respuestas en RPC. Las solicitudes RPC se envían automáticamente a la siguiente dirección: http://ServerAddress/4DSOAP.
    • Para publicar un servicio web 4D en modo DOC, sólo necesita utilizar la siguiente URL para el WSDL:
      http://ServerAddress/4DWSDL/DOC
      El servidor 4D maneja el procesamiento de las solicitudes y respuestas en DOC. Las solicitudes DOC se envían automáticamente a la dirección http://ServerAddress/4DSOAP/DOC

Dos tipos diferentes de datos XML son intercambiados vía el protocolo SOAP: datos de tipo simple y datos de tipo complejo. Los datos de servicios web publicados en modo RPC pueden ser de tipo simple o de tipo complejo. En cambio, los datos de servicios web publicados en modo DOC son sistemáticamente de tipo complejo. 4D soporta servicios web utilizando datos de tipo simple y complejo

Los datos XML de tipo complejo no pueden utilizarse directamente en una base de datos 4D y necesitan un proceso específico. En la mayoría de los casos, el asistente de servicios web efectuará el proceso por usted; sin embargo, algunas veces puede ser necesario completar este proceso utilizando los comandos XML del lenguaje de 4D. Para mayor información, consulte Procesamiento de tipos complejos.

La página Web services de las Propiedades de la base (tema “Web”) permite definir los parámetros generales sobre la publicación y uso de servicios web:

La acción de estos parámetros se describe en las siguientes páginas. Para una descripción detallada de cada opción, consulte la sección Página Web/Web Services.

 
PROPIEDADES 

Producto: 4D
Tema: Publicación y uso de servicios web

 
HISTORIA 

 
ARTICLE USAGE

Manual de Diseño ( 4D v16)
Manual de Diseño ( 4D v16.1)
Manual de Diseño ( 4D v16.3)