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 finish, 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 (the callback's name is "OnBeforeRequestAdvanced").
Open the callback flow and drag the desired extension action(s) to the flow according to your use case.
Note: Extension actions using the SOAP Extensibility API can only be used in the context of a SOAP callback flow.
Example SOAP extensibility use cases
OutSystems provides guidelines on how to implement common use cases of SOAP advanced extensibility. Check the sub-topics of this page for more information.
OutSystems provides a Forge component called SOAP Extensibility Samples that contains server actions implementing many SOAP extensibility use cases using the SOAP Extensibility API.
You can use the server actions provided by this component directly in your applications or use them as a starting point for implementing your own specific extensibility use cases.
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.
- Example: Use a different character encoding
- How to add support for a different character encoding using the SOAP Extensibility API.
- Example: Use MTOM
- How to add support for Message Transmission Optimization Mechanism (MTOM) using the SOAP Extensibility API.