SOAP (Web) Definitions
SOAP Definitions allow you to "describe" the structure of web services to the Statelake application. This allows Statelake to understand your particular web service structure and read and write data to it. This gives you the flexibility to interact with any web service as you are in complete control over the definition.
A SOAP Definition can be used to describe web services that are based on Web Service Definition Language (WSDL).
A SOAP Definition is an in-memory representation of the data you are going to read or write from the web service. A web service is a special case in comparison to DB Definitions and File Definitions - a SOAP Definition has both a request and response definition.
When reading data, you define the request which is sent to the web service, and the resulting response is loaded from the web service into memory. In this case the request is generally a set of parameters that determine the data to be responded. Both the request and response data is retained in memory until the definition is closed.
When writing data, you again define the request which is sent to the web service, and the resulting response is loaded from the web service into memory. In this case the request is generally the data to be written to the web service and the response is the result of writing that data. You write data into the request definition using a Map, and this is subsequently output in the appropriate format to the web service. Even after writing the data to the web service, both the request and response data is retained in memory until the definition is closed.
You can create a single SOAP Definition and use it against multiple similar web services simply by assigning a different SOAP Connection. When assigning a SOAP Connection to a SOAP Definition it is considered a design time assignment, when coming to use the SOAP Connection in an Action you have the chance to reassign the SOAP Connection (run time assignment). This allows you to use the same SOAP Definition in multiple Actions each with their own SOAP Connection.
Buttons
Button Name | Description |
---|---|
Save | Click to Save any changes you have made. All changes will be lost if you do not click the Save button. |
Cancel | Click to Cancel any changes you have made |
Delete | Click to Delete this module. You will be asked to confirm your choice. |
Design Request | Click this button to open the designer for the request definition. You should populate the fields of the general screen prior to designing the SOAP Definition request. |
Design Response | Click this button to open the designer for the response definition. You should populate the fields of the general screen prior to designing the SOAP Definition response. |
General Screen
The editor for a SOAP Definition is broken into two main windows - the general screen and the Design screen. The details required on this screen must be fully completed prior to advancing to the designer.

Fields
Field Name | Description |
---|---|
SOAP Definition Name | A friendly name for the SOAP Definition. This is the name that the definition will be known as throughout the configuration. You should enter something meaningful to help you recognise and understand the definition. |
DB Connection | Select the DB Connection used on this SOAP Definition. This is a design time setting, and can be overridden with run time setting on the Action. |
SOAP Connection | Select the SOAP Connection used on this SOAP Definition. This is a design time setting, and can be overridden with run time setting on the Action. |
Body Root Node | |
Envelope NS | |
Service | Select a service to use from the web service. |
Port | Select the port to use from the web service. |
Endpoint | Enter the Endpoint to send requests to. This is defaulted from the setting in the WSDL and only needs to be changed if redirecting to a different web service location. |
Operation | Select the operation to call from the web service. |
SOAP Action | Enter the SOAP Action which is sent in the request to the web service. This is defaulted from the WSDL and does not normally need to be changed. This can be blank. |
Validate Request against WSDL schema | Select to validate the request against the XSD extracted from the WSDL. The request will be validated prior to sending. |
Validate Response against WSDL schema | Select to validate the response against the XSD extracted from the WSDL. The response will be validated prior to loading into the SOAP Definition. |
Set target namespace as default namespace | Select to pass the target namespace as the default namespace instead of having its own prefix. |
Automatically handle SOAP Faults | |
Move Body namespace to Envelope | |
Use xsi:nil for null fields | |
Force namespace prefix on attributes |
Buttons
Button Name | Description |
---|---|
Refresh XSD | Click to refresh the local cached copy of the XSD schema that is extracted/generated from the WSDL of the Web Connection. This will use the local cached WSDL and extract/generate local cached XSD. The XSD will be extracted automatically when saving if it is not already cached. Any change to the Web Connection will also cause it to extract when saving. |
Create Blank XML Files | Click to create empty XML files that represent the structure of the Web Service request and response. This is helpful for testing purposes. |