INSTITUCIONAL
COMUNIDAD
BLOG
AYUDA
MI CUENTA
EN PT ES

Sobre GeneXus 7.5: Protocolo SOAP

La última versión de GeneXus incorpora el soporte del estándar SOAP, lo que, junto a las características de GeneXus, facilita la interconexión entre distintas aplicaciones

 

Introducción

SOAP es un protocolo "liviano" basado en XML, para invocar procedimientos en forma remota (Remote Procedure Call). Utiliza cualquier protocolo que permita transportar mensajes de texto, siendo HTTP el más utilizado.
Su especificación describe el contenido que debe tener un mensaje XML para ser usado en una invocación remota.

Cualquier aplicación que cumpla la especificación puede invocar y proveer servicios sin importar en que lenguaje o plataforma esté implementado, lo único necesario es que la aplicación sea capaz de interpretar el mensaje SOAP que recibe, realizar el procesamiento que el mensaje requiera, y devolver otro mensaje SOAP con la respuesta.

En las aplicaciones generadas por GeneXus se utiliza SOAP para invocar a objetos en forma remota, usando HTTP como protocolo de transporte.

Alcance

Objetos llamadores (Clientes)

Objetos: Todos los objetos

Lenguajes: C/SQL - Java - Visual Basic - Visual FoxPro - C#

Interfaces: Win/Web

Los objetos llamadores son los que invocan servicios mediante SOAP

 

Objetos llamados (Servidores)

Objetos: Procedimientos y Reportes

Lenguajes: C/SQL - Java - Visual Basic - C#

Interfaces: Web

Los objetos llamados son los brindan un servicio invocado mediante SOAP

Descripción

Algunas de las ventajas de utilizar este protocolo en aplicaciones GeneXus son la posibilidad de desarrollar servicios web, así como el poder hacer invocaciones entre objetos de diferentes generadores (por ej. llamar desde Visual Basic a Java, o desde C/Sql a Visual Basic), funcionalidad que no estaba permitida en versiones anteriores, excepto llamadas RPC desde los generadores visuales a los generadores CSql/Cobol/RPG.

Servidor
Para indicar en GeneXus que un objeto main va a ser llamado utilizando el protocolo SOAP, se deberá seleccionar el valor "SOAP" en la propiedad "Options/Call Protocol".  Nos referiremos en adelante a dichos objetos como "Servidores" o "Servicios web". Solo pueden ser reportes o procedimientos, sin ningún tipo de interfaz con el usuario.

Se requiere un servidor Web que haga el hosting de los servicios a ser invocados.

Los programas Servidores reciben la invocación http, procesan el mensaje SOAP que envía el Cliente con sus parámetros, realizan la acción requerida, y generan otro mensaje SOAP de respuesta (eventualmente con los parámetros modificados).

Cliente
Los objetos que van a invocar al servicio web, a los que llamaremos "Clientes", pueden ser cualquier objeto GeneXus. La invocación se hace con el comando call() de GeneXus.

Los programas Clientes realizan las tareas necesarias para ensamblar el mensaje SOAP, hacer la invocación http, y desensamblar la respuesta,  obteniendo los parametros modificados en forma automática. Todo esto se realiza en forma automática y transparente para el usuario.

Locations
Para indicar cual va a ser la ubicación de los servicios invocados se utiliza un esquema conocido como Locations.

Por más información:
http://www.artech.com.uy/Solis/gxdl/Español/GeneXus_Solis/GeneXus
/Internet/Docum/ReleaseNotes/7.5/callsoap.htm

 

Relacionado
Hemos liberado la primer Beta de GeneXus 6 Evolution II
Con la Ceibo, Internet está a un click
Java es el tercer visual
Principales características de GeneXus 6 Evolution II Beta 1
La Beta 2 de la versión Ceibo está disponible
GeneXus habla en XML
No hay que saber HTML para trabajar con Web Panels
GeneXus en el corto y mediano plazo por Nicolas Jodal
Beta 4 de la versión Ceibo: novedades y mejoras
¡¡¡ GeneXus 7.0 en el mercado !!! (primera parte)
¡¡¡ GeneXus 7.0 en el mercado !!! (segunda parte)
Sitio de GeneXus 7.0
La primera evolución de GeneXus 7.0
GeneXus sigue su evolución
El área técnica de ARTech ya tiene Web Components