4D v16.3

Publicar un servicio web con 4D

Inicio

 
4D v16.3
Publicar un servicio web con 4D

Publicar un servicio web con 4D  


 

 

La publicación de un servicio web en 4Dse efectúa generalmente en tres etapas:

  1. Creación del método a publicar
  2. Configuración de la publicación (WSDL)
  3. Publicación

Se pueden definir etapas adicionales de personalización, pero no son obligatorias.

Puede crear todo tipo de método de proyecto destinado a una publicación como un servicio web. El método debe aceptar los parámetros y devolver un resultado. Es imperativo que estos parámetros se declaren en el encabezado del método utilizando los comandos del tema Compilador

Por defecto, 4D da formato a los parámetros necesarios para la operación de métodos publicados como servicios web. Sin embargo, puede modificar estos parámetros utilizando el comando SOAP DECLARATION

4D se encarga automáticamente de codificar y decodificar los datos recibidos y enviados vía SOAP. 

Atención: los nombres de los métodos se utilizan como etiquetas XML en las solicitudes SOAP. Conforme a la norma XML, estos nombres no deben tener espacios o cifras. Además, para evitar todo riesgo de incompatibilidad, se recomienda no utilizar caracteres extendidos (tales como los caracteres acentuados).

Para definir y controlar el desarrollo de un método publicado como un servicio web, debe utilizar los comandos del tema “Servicios web”, consulte la sección Servicios Web (Servidor) en el manual Lenguaje 4D.

Para poder publicar uno o más métodos de su base de datos como servicios web, se deben cumplir las siguientes condiciones.

  • La máquina utilizada como servidor SOAP (aplicación 4D monopuesto o 4D Server) tiene una licencia SOAP 4D.
  • Debe iniciarse el servidor web de 4D.
  • Debe estar seleccionada la opción Permitir solicitudes de servicios web en la página Web Services de la caja de diálogo de las Propiedades de la base. Si esta opción no está seleccionada, 4D rechaza las solicitudes SOAP y no genera un WSDL.

    Cuando esta opción está seleccionada, 4D crea el archivo WSDL (ver Generación de WSDL). 
  • Cada método a publicar debe Ofrecerse como servicio web. Esta configuración se lleva a cabo utilizando una opción de la ventana Propiedades del método:

    Nota: para mayor información sobre esta ventana, consulte la sección Propiedades de los métodos proyecto.
    Cuando la opción Ofrecido como Servicio web está seleccionada, el método correspondiente puede ser llamado como servicio web vía una solicitud SOAP.
    Nota: si la opción Publicado en WSDL también está seleccionada, el método aparecerá en el WSDL del servidor (ver el siguiente párrafo).

En la Página Métodos del Explorador de 4D, los íconos específicos indican los métodos ofrecidos como servicios web y los publicados en el archivo WSDL .

El WSDL describe, en lenguaje XML, la sintaxis y la información necesaria para llamar el método 4D (Nombre del método, URL, parámetros, etc.).

En 4D, el WSDL corresponde a un solo servicio web y define los métodos y sus parámetros y puede ser consultado en un lugar específico. En 4D, el WSDL no es un “archivo” real (sólo existe en memoria y no está escrito en el disco); este es un URL llamado 4DWSDL para servicios web publicado en modo RPC o 4DWSDL/DOC para los servicios web publicados en modo DOC. Siempre está ubicado en la raíz del servidor web.

Por ejemplo, si la dirección de su servidor web es http://www.myserver.com, usted podría consultar el WSDL en la siguiente URL:

  • http://www.myserver.com/4DWSDL(modo RPC)
  • http://www.myserver.com/4DWSDL/DOC (modo DOC)

Para añadir o suprimir un método en el WSDL, simplemente seleccione o deseleccione la opción correspondiente en la ventana Propiedades del método. 4D actualizará inmediatamente los contenidos WSDL.

Nota: en el Explorador de 4D, un icono específico identifica los métodos publicados en el WSDL.

Cuando las solicitudes servicios web están autorizadas, 4D genera automáticamente y dinámicamente el WSDL del servidor 4D Web si al menos un método tiene seleccionada la opción Publicado en WSDL en la ventana Propiedades del método. Por defecto, esta opción no está seleccionada.

Cada servicio web publicado en Internet tiene un nombre. Este nombre se utiliza para diferenciar los servicios a nivel de servidor SOAP (cuando el servidor publica varios servicios web), como también en los directorios de los servicios web.

Por defecto, 4D utiliza el nombre A_WebService. Este parámetro puede modificarse en la página "Web services" del tema Web de las Propiedades de la base.

Atención: conforme a la norma XML para nombres de etiquetas, la cadena de caracteres utilizada no debe comenzar con un número ni tener espacios. Además, para evitar todo riesgo de incompatibilidad, se recomienda no utilizar caracteres extendidos (tales como los caracteres acentuados).

Cada servicio web publicado en Internet debe ser único. La unicidad de los nombres de servicios web se asegura utilizando espacios de nombres XML. Un espacio de nombres es una cadena de caracteres arbitraria que permite identificar de manera única un conjunto de etiquetas XML. Generalmente, el espacio de nombres comienza con el URL de la empresa (http://miempresa.com/miespaciodenombre). En este caso, no es indispensable tener algo en particular en la URL definida; lo que importa es que la cadena de caracteres utilizada sea única.

Por defecto, 4D utiliza el siguiente namespace: http://www.4d.com/namespace/default. Este parámetro puede modificarse en la página "Web services" del tema Web de las Propiedades de la base.

Los comentarios asociados a los métodos ofrecidos como servicios web y publicados en el WSDL aparecen automáticamente en el archivo como un campo “documentación”.

Estos comentarios deben introducirse en la Página Métodos del Explorador (ver la sección Utilizar los comentarios).

Este mecanismo permite describir o documentar los métodos publicados. La interpretación y el manejo de este campo depende de la implementación del cliente servicio web.

Una vez su servicio web es publicado por 4D, toda aplicación cliente que soporte servicios web puede conectarse a él. El modo de acceso al servidor y el proceso del intercambio de información con el servidor servicio web dependerá de la aplicación cliente utilizada para la operación.

Toda la información necesaria para el uso de un servicio web (tal como el URL del servicio, los parámetros a utilizar, etc.) se publica en el WSDL de 4D. En principio, el uso de un servicio web debería comenzar con la lectura del WSDL del servidor SOAP con el fin de recuperar esta información. En 4D, el URL del WSDL es http://ServerAddress/4DWSDL (modo RPC) o http://ServerAddress/4DWSDL/DOC (modo DOC).

Sin embargo, este paso no es obligatorio. La conexión al servidor SOAP puede efectuarse directamente. 

Esta es una lista de los valores necesarios para establecer solicitudes SOAP, así como su método de definición:

  • URL de acceso a un Servicio Web publicado por 4D
    http://ServerAddress/4DSOAP/ (modo RPC) o
    http://ServerAddress/4DSOAP/DOC (modo DOC)
    (no personalizables).
  • Parámetros del método
    Los parámetros deben declararse en el método (definido por el desarrollador).
    Nombres SOAP por defecto: FourD_arg0, FourD_arg1... FourD_argn
    Nombres personalizables utilizando el comando SOAP DECLARATION.
  • Contenido del campo SOAP Action
    ServiceName#MethodName (no personalizable).

 
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)