When consuming a SOAP web service you can use your own .NET code to change the connection or to customize the message in the request and/or response.
The general workflow for implementing an advanced extensibility scenario is the following:
- 1. Set up an OutSystems extension
- Create a new extension in Integration Studio and define the actions you need.
- 2. Implement the .NET code
- Open Visual Studio .NET for editing the extension source code by clicking 'Edit Source Code .NET'.
Edit the project properties setting the project target framework to '.NET Framework 4.6.1'.
Add any necessary assembly references.
Still in Visual Studio, implement the logic of the actions using the functionality you need from the SOAP Extensibility API. When you are done, close Visual Studio.
In Integration Studio, publish the extension.
- 3. Use the extension
In Service Studio, add a dependency to the actions you need from the extension.
Select your SOAP Web Service element in the element tree and create a new SOAP callback in the OnBeforeRequest property (it will be named "OnBeforeRequestAdvanced").
Open the callback flow and drag the desired extension action(s) to the flow according to your use case.
Example SOAP Extensibility Use Cases
OutSystems provides guidelines on how to implement common use cases of SOAP advanced extensibility. In the sub-topics you can find more information on how to address the following extensibility scenarios for consumed SOAP web services:
- Change service endpoint at runtime;
- Add WS-Addressing elements to SOAP requests;
- Add SOAP header;
- Add HTTP header;
- Authenticate using a client certificate.
Articles in this Section
- Example: Change service endpoint at runtime
- How to change the service endpoint at runtime using the SOAP Extensibility API.
- Example: Add WS-Addressing elements to SOAP requests
- How to add WS-Addressing elements to SOAP requests using the SOAP Extensibility API.
- Example: Add an HTTP header
- How to add an HTTP header using the SOAP Extensibility API.
- Example: Add SOAP header
- How to add a SOAP header element using the SOAP Extensibility API.
- Example: Authenticate using a client certificate
- How to add support for authenticating SOAP requests with a client certificate using the SOAP Extensibility API.