Contact Us 1-800-596-4880

SAP S/4HANA SOAP Connector 2.1 Reference

Anypoint Connector for SAP S/4HANA SOAP provides full support for the SOAP APIs exposed by SAP S/4HANA ERP and from version 2.1.x provides support also for SAP S/4HANA On-Premise ERP.

The main class of an extension is the entry point from which configurations, connection providers, operations, and sources are declared.

Configurations


Config

Parameters

Name Type Description Default Value Required

Name

String

The name for this configuration. Connectors reference the configuration with this name.

x

Connection

The connection types to provide to this configuration.

x

Encoding

String

Character encoding used in the messaging.

Connection timeout

Number

Connection timeout for the request

30

Connection Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit to use in the Timeout configurations

SECONDS

Encoding

String

Default character encoding to use in all the messages. If not specified, the default charset in the mule configuration will be used

Name

String

The identifier of this element used to reference it in other components

x

Expiration Policy

Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. This does not mean that the instance expires at the exact moment that it becomes eligible. Mule purges the instances as appropriate.

Connection Types

Basic Authentication

Basic authentication is the simplest way of enforcing access controls because it does not require cookies, session identifiers, or login pages. Instead, it uses standard fields in the HTTP header, removing the need for handshakes. This mechanism provides no confidentiality protection for the transmitted credentials. They are merely encoded with Base64 in transit, but not encrypted or hashed in any way.

Parameters
Name Type Description Default Value Required

Service base URL

String

The base URL of the service on SAP S/4HANA to be accessed from the connector.

x

Username

String

The account username with which to log in to SAP S/4HANA.

x

Password

String

The account password with which to log in to SAP S/4HANA.

x

Discovery Service Enabled

Boolean

Enables automatic service discovery

true

Discovery Service Path

String

URL to use for automatic services discovery

/sap/bc/srt/wsil_ext

Service directory

String

Common HTTP directory for all SAP services

Unlisted services

Array of String

List of services to add to the list of discovered services

Service discovery resolution timeout

Number

Connection timeout for service discovery

30

Service Discovery Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit to use in the Timeout configuration

SECONDS

Default HTTP headers

Object

Default HTTP headers to include in the message.

Default query parameters

Object

Default query parameters to include in the request.

Proxy configuration

Proxy configuration for the connector.

TLS configuration

TLS

Defines a configuration for TLS, which can be used from both the client and server sides to secure communication for the Mule app. When using the HTTPS protocol, the HTTP communication is secured using TLS or SSL. If HTTPS is configured as the protocol then the user needs to configure at least the keystore in the tls:context child element of the listener-config.

HTTP

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

OAuth 2.0 Client Credentials Authentication

OAuth 2.0 authentication provides a secure way of authenticating against the resource using the provided client ID and client secret. Authentication is ensured using an access token generated by the resource. The generated token has a limited lifespan and is automatically refreshed by initiating a refresh dance, after the token expires.

Parameters
Name Type Description Default Value Required

Service base URL

String

The base URL of the SAP S/4HANA SOAP service to access from the connector

x

Discovery Service Enabled

Boolean

Enables automatic service discovery

true

Discovery Service Path

String

URL to use for automatic services discovery

/sap/bc/srt/wsil_ext

Service directory

String

Common HTTP directory for all SAP services

Unlisted services

Array of String

List of services that will be added to the list of discovered services, for example: /sap/bc/srt/wsdl_ext/flv_10002S111AD1/srvc_url/sap/bc/srt/scs_ext/sap/creditmanagementaccountbyidqu1
If the Service directory parameter is not specified, then the HTTP directory needs to be prepended before every service name in this list, in the following format: {directory}/{service-name}.

Service discovery resolution timeout

Number

Connection timeout for service discovery

30

Service Discovery Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit to use in the Timeout configuration

SECONDS

Default HTTP headers

Object

Default HTTP headers the message should include

Default query parameters

Object

Default Query parameters the request should include

Proxy configuration

Proxy configuration for the connector

TLS configuration

TLS

Defines a configuration for TLS, which can be used from both the client and server sides to secure communication for the Mule app. When using the HTTPS protocol, the HTTP communication is secured using TLS or SSL. If HTTPS is configured as the protocol then the user needs to configure at least the keystore in the tls:context child element of the listener-config.

HTTP

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

Client Id

String

The OAuth client ID as registered with the service provider

x

Client Secret

String

The OAuth client secret as registered with the service provider

x

Token Url

String

The service provider’s token endpoint URL

https://{host-name}/{oauth-service}/{generate-token-resource}

Scopes

String

The OAuth scopes requested during the dance. If not provided, it defaults to those in the annotation.

Object Store

String

A reference to the object store used to store each resource owner ID’s data. If not specified, the default object store is automatically provisioned by Mule.

Listener Config

Parameters

Name Type Description Default Value Required

Name

String

The name for this configuration. Connectors reference the configuration with this name.

x

Encoding

String

Default character encoding to use in all the messages. If not specified, the default charset in the Mule configuration is used.

HTTP Listener

String

Reference to the global HTTP Listener that will be used to receive SOAP S/4HANA messages.

x

WSDL Paths

Array of WSDL Path

Specify the locations of the WSDL definitions.

Name

String

The identifier of this element; used by other components to reference it

x

Expiration Policy

Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. This does not mean that the instance expires at the exact moment that it becomes eligible. Mule purges the instances as appropriate.

Associated Sources

Supported Operations

Invoke

<s4hana-soap:invoke>

Consumes an operation from an S/4HANA SOAP Web Service.

Parameters

Name Type Description Default Value Required

Configuration

String

The name of the configuration to use

x

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

x

Service name

String

Name of the service

x

Operation name

String

The operation name of the service

x

Message

Binary

The content of the message.

#[payload]

Connection timeout

Number

Connection timeout for the request

Connection Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit to use in the Timeout configurations

Custom HTTP headers

Object

Custom headers that the request will include. The headers specified here will be merged with the default headers specified in the configuration.

Custom query parameters

Object

Custom query parameters that the request will include. The query parameters specified here will be merged with the default query parameters specified in the config.

Target Variable

String

The name of a variable in which to store the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors

Output

Type

SOAP Output Envelope

Attributes Type

For Configurations

Throws

  • S4HANA-SOAP:CONNECTIVITY

  • S4HANA-SOAP:PROCESSING_ERROR

  • S4HANA-SOAP:RETRY_EXHAUSTED

Unauthorize

<s4hana-soap:unauthorize>

Deletes all of the access token information of a given resource owner ID so that it’s impossible to execute any operation for that user without repeating the authorization dance.

Parameters

Name Type Description Default Value Required

Configuration

String

The name of the configuration to use

x

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

x

For Configurations

Sources

Outbound Message Listener

<s4hana-soap:outbound-message-listener>

Creates an input source that listens for incoming SAP S/4HANA SOAP outbound messages.

Parameters

Name Type Description Default Value Required

Configuration

String

The name of the configuration to use

x

Path

String

Path where server listens for the outbound messages

x

Allowed Methods

String

Comma-separated list of methods. Leave empty to allow all.

GET, POST

Message Type

String

The message type the source listens for

x

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

x

Primary Node Only

Boolean

Whether this source should be executed only on the primary node when running in a cluster

On Capacity Overload

Enumeration, one of:

  • WAIT

  • FAIL

  • DROP

Strategy that the Mule applies when the flow receives more messages to process than it has the capacity for

WAIT

Streaming Strategy

Configure how Mule processes streams with streaming strategies. Repeatable streams are the default behavior.

Redelivery Policy

Defines a policy for processing the redelivery of the same message

Body

Binary

Headers

Object

Status Code

Number

Reason Phrase

String

Output

Type

Any

Attributes Type

For Configurations

Types

Proxy Configuration

Field Type Description Default Value Required

Host

String

Host where the proxy requests are sent

x

Port

Number

Port where the proxy requests are sent

x

Username

String

The username to authenticate against the proxy

Password

String

The password to authenticate against the proxy

Non Proxy Hosts

Array of String

A list of hosts against which the proxy should not be used

Ntlm Domain

String

The domain to authenticate against the proxy

TLS

Defines a configuration for TLS, which can be used from both the client and server sides to secure communication for the Mule app. When using the HTTPS protocol, the HTTP communication is secured using TLS or SSL. If HTTPS is configured as the protocol then the user needs to configure at least the keystore in the tls:context child element of the listener-config.

Field Type Description Default Value Required

Enabled Protocols

String

A comma-separated list of protocols enabled for this context

Enabled Cipher Suites

String

A comma-separated list of cipher suites enabled for this context

Trust Store

Key Store

Revocation Check

Truststore

Field Type Description Default Value Required

Path

String

The location (which will be resolved relative to the current classpath and file system if possible) of the truststore

Password

String

The password used to protect the truststore

Type

String

The type of store used

Algorithm

String

The algorithm used by the truststore

Insecure

Boolean

If true, no certificate validations will be performed, rendering connections vulnerable to attacks. Use at your own risk.

Keystore

Field Type Description Default Value Required

Path

String

The location (which will be resolved relative to the current classpath and file system if possible) of the keystore.

Type

String

The type of store used.

Alias

String

When the keystore contains many private keys, this attribute indicates the alias of the key that should be used. If not defined, the first key in the file will be used by default.

Key Password

String

The password used to protect the private key.

Password

String

The password used to protect the keystore.

Algorithm

String

The algorithm used by the keystore.

Standard Revocation Check

Field Type Description Default Value Required

Only End Entities

Boolean

Only verify the last element of the certificate chain

Prefer Crls

Boolean

Try CRL instead of OCSP first

No Fallback

Boolean

Do not use the secondary checking method (the one not selected before)

Soft Fail

Boolean

Avoid verification failure when the revocation server can not be reached or is busy

Custom OCSP Responder

Field Type Description Default Value Required

Url

String

The URL of the OCSP responder

Cert Alias

String

Alias of the signing certificate for the OCSP response (must be in the truststore) if present

CRL File

Field Type Description Default Value Required

Path

String

The path to the CRL file

Reconnection

Field Type Description Default Value Required

Fails Deployment

Boolean

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

Reconnection Strategy

The reconnection strategy to use.

Reconnect

Field Type Description Default Value Required

Frequency

Number

How often in milliseconds to reconnect

Blocking

Boolean

If false, the reconnection strategy will run in a separate, non-blocking thread

Count

Number

How many reconnection attempts to make

Reconnect Forever

Field Type Description Default Value Required

Frequency

Number

How often in milliseconds to reconnect

Blocking

Boolean

If false, the reconnection strategy will run in a separate, non-blocking thread

Expiration Policy

Field Type Description Default Value Required

Max Idle Time

Number

A scalar time value for the maximum amount of time a dynamic configuration instance can be idle before it’s considered eligible for expiration

Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

A time unit that qualifies the maxIdleTime attribute

SOAP Output Envelope

Field Type Description Default Value Required

Attachments

Object

Body

Binary

Headers

Object

SOAP Attributes

Field Type Description Default Value Required

Transport Additional Data

Object

Transport Headers

Object

WSDL Path

Field Type Description Default Value Required

Wsdl Path

String

Location of the WSDL definition.

x

Outbound Message Attributes

Field Type Description Default Value Required

Http Request Attributes

Message Type

String

Soap Headers

Object

Http Request Attributes

Field Type Description Default Value Required

Client Certificate

Any

Http Headers

Object

Listener Path

String

Local Address

String

Method

String

Query Params

Object

Raw Request Uri

String

Remote Address

String

Scheme

String

Uri Params

Object

Version

String

Repeatable In Memory Stream

When streaming in this mode, Mule does not use the disk to buffer the contents. If you exceed the buffer size, the message fails.

Field Type Description Default Value Required

Initial Buffer Size

Number

The amount of memory to allocate to consume the stream and provide random access to it. If the stream contains more data than can fit into the specified buffer size, then the buffer is expanded according to the bufferSizeIncrement attribute, with an upper limit of what is specified for maxInMemorySize.

Buffer Size Increment

Number

This is how much the buffer size expands if it exceeds the amount specified for its initial size. Setting a value of zero or lower means that the buffer should not expand, and a STREAM_MAXIMUM_SIZE_EXCEEDED error is thrown when the buffer gets full.

Max Buffer Size

Number

This is the maximum amount of memory to use. If the specified maximum is exceeded, a STREAM_MAXIMUM_SIZE_EXCEEDED error is thrown. A value lower than or equal to zero means there is no limit on the buffer size.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

The unit in which all these buffer size attributes are expressed

Repeatable File Store Stream

File store repeatable streams require buffering. Mule keeps a portion of the stream contents in memory. If the stream contents are larger than the configured buffer size, Mule backs up the buffer’s content to disk and then clears the memory.

Field Type Description Default Value Required

In Memory Size

Number

Defines the maximum memory that the stream should use to keep data in memory. If more than that is consumed, then the contents start to buffer on the disk.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

The unit in which maxInMemorySize is expressed

Non-repeatable Stream

In some cases, you may want to disable the repeatable stream functionality and use non-repeatable streams, which can have less performance overhead, memory use, and cost.

Field Type Description Default Value Required

Transactional Action

Enumeration, one of:

  • ALWAYS_JOIN

  • JOIN_IF_POSSIBLE

  • NOT_SUPPORTED

The type of joining action that operations can take regarding transactions.

JOIN_IF_POSSIBLE

Redelivery Policy

Field Type Description Default Value Required

Max Redelivery Count

Number

The maximum number of times a message can be redelivered and processed unsuccessfully before triggering process-failed-message

Message Digest Algorithm

String

The secure hashing algorithm to use. If not set, the default is SHA-256.

Message Identifier

Defines which strategy is used to identify the messages.

Object Store

ObjectStore

The object store where the redelivery counter for each message is going to be stored.

Redelivery Policy Message Identifier

Field Type Description Default Value Required

Use Secure Hash

Boolean

Whether to use a secure hash algorithm to identify a redelivered message

Id Expression

String

Defines one or more expressions to use to determine when a message has been redelivered. This property may only be set if useSecureHash is false.

View on GitHub