IMPORTANT: This documentation has been discontinued. Read the updated SOAP V1 documentation on our new documentation portal.

SOAP V1 invokes SOAP endpoints from a pipeline. It uses a Apache FreeMarker template to generate the SOAP request message and converts the response from SOAP to JSON, trying its best not to disrupt the translation.

Take a look at the configuration parameters of the component:

  • URL: URL to be called - it may contain parameters following the {:param1} pattern, which will be replaced by the corresponding input message property.

  • Content Type: configures the Content Type and encoding.

  • SOAP Action: XML call header.

  • Account: account to be used by the component.

  • Template: Apache FreeMarker template for the SOAP message to be sent in the request.

  • Connection Timeout: connection expiration time (in milliseconds).

  • Reading Timeout: maximum time for reading (in milliseconds).

  • Stop On Client Error: if activated, the option will generate an error and suspend the pipeline execution.

  • Stop On Server Error: if activated, the option will generate an error and suspend the pipeline execution.

  • Advanced Settings: advanced configurations.

  • Allow Insecure Calls To HTTPS Endpoints: when activated, the option allows non-reliable calls to HTTPS endpoints to be made.

  • Enable Retries: when activated, the option allows new tries.

  • Maximum Number Of Retries Before Giving Up: maximum number of retries before giving up the call.

  • Time To Wait Before Each Retry: maximum time between retries (in milliseconds).

Messages flow

Input

The component waits for a message in the following format:

{
header: {
"headerA":"valueA",
"headerB":"valueB"
},
body: {
// message structure that will be replaced by the Dust template
}

Output

  • successful

{
status: XXX,
body: {
},
headers: {
}
}

  • with error

{
error: "error message",
code: XXX,
body: {
},
headers: {
}
}

IMPORTANT: for some errors, body and headers are unavailable.

SOAP V1 in Action

About the template variable

The name of the variable can also have minus (-), dot (.) and colon (:) at any position, but they must be escaped with a preceding backslash (\). Otherwise, they can be interpreted as operators.

About numbers substitution

<#assign x=42>
${x}
${x?string} <#-- the same as ${x} -->
${x?string.number}
${x?string.currency}
${x?string.percent}
${x?string.computer}

Output

42
42
42
$42.00
4,200%
42

Number format

<#setting number_format="0.####">

To check if the field isn't null:

<#if varTest??>${varTest}</#if>


SoapUI calls reprocedures in SOAP V1

Did this answer your question?