WebServicesWithGxEng

Unofficial Content

Leer este artículo en Español

WebServices in GeneXus

The following pages explain webservice's general concepts and how they relate with Genexus.

Provider

This is the webservice itself. To build a provider using GeneXus create a procedure with the following properties:

  • Main Object = True
  • Call Protocol=SOAP

The generation environment has to be Web. Once the procedure is compiled it is ready to be consumed by any application (developed with GeneXus or any other tool in). GeneXus generated webservices always expose a method execute(). Input and outputs are specified using the parm() rule in the procedure.

It may also provide a webservice using  Business component as webservice  or Dataprovider as webservice

WSDL

GeneXus generates this. When you specify and compile a procedure marked as a webservice, GeneXus also generates the WSDL. If the webservice is called "GetCustomer" and is available at HTTP://server/baseurl/aGetCustomer.aspx, the WSDL for this procedure is located at HTTP://server/baseurl/aGetCustomer.aspx/?WSDL

Consumer

It is possible with Genexus to consume an external webservice (developed by third party with Genexus or any other tool).
To do this please refer to
- Create an External Object: WSDL (Web Service) using the WSDL Import Wizard.
   After that the webservice could be invoked using the external objecta ( like any other data type). If it is neccessary an structured Data type ( SDT ) object would be created , in order to manage the webservice parameter's.

- or, for previous genexus version, using the WSDL Inspector

In both cases it allows Genexus to import the webservice definition so that it can be accessed (consumed). If the webservice is defined in the same KB it can be called with a simple call()

Interesting Links

Note: This page was created by the Collaborative Project WebServices-FENIX/MX1 WebServices-FENIX/MX1. We hope is useful. Any comment or suggestion is welcome.