Show TOC

Web Services (SOAP) Input Adapter ConfigurationLocate this document in the navigation structure

Configure the Web Services (SOAP) Input adapter by specifying values for the SOAP Input transporter, the ESP connector (EspPublisher), and Event Stream Processor.

Logging
XML Element Description
Log4jProperty

Type: string

(Optional) Specify a full path to the log4j.properties logging file you wish to use. The default value is STREAMING_HOME/adapters/framework/config/log4j.properties.

Encryption
XML Element Description
Cipher

Type: string

(Optional) Specify a full path to the adapter.key encryption file you wish to use. The default value is $STREAMING_HOME/adapters/framework/adapter.key.

Transporter Module: SOAP Input Transporter

The SOAP Input transporter calls or polls a Web service, parses and converts the response into Event Stream Processor data format, and feeds this data into the ESP Publisher module.

XML Element Description
Module

(Required) Section containing all information for the SOAP input transporter. It contains a type attribute for specifying the module type. For example, transporter.

InstanceName

Type: string

(Required) Instance name of the specific module you want to use. For example, MyInputTransporter.

Name

Type: string

(Required) Name of the module as defined in the modulesdefine.xml file. For example, <TransporterType>InputTransporter.

Polling

Section containing the polling elements, Enabled and TimeInterval.

Enabled

Type: boolean

(Required) Turns on polling for the Web Service (SOAP) Input adapter. This element should always be enabled for the input adapter. If set to false, the TimeInterval and MaxPollCount properties are ignored.

TimeInterval

Type: integer (milliseconds)

(Required) The polling interval for the Web Services (SOAP) Input adapter.

MaxPollCount

Type: java.lang.long

(Optional) Specify the maximum number of times to call the polling interface. The default value is 9223372036854775807, which is the maximum value of the java.lang.long datatype. Leaving it to the default value means the adapter polls for data indefinitely.

Next

Type: string

(Required) Instance name of the module that follows this one.

BufferMaxSize

Type: integer

(Advanced) Capacity of the buffer queue between this module and the next. The default value is 10240.

Parameters

(Required) Section containing the SOAPInputTransportParameters element.

SOAPInputTransportParameters

(Required) Element containing elements for the SOAP Input transporter.

webservice

Type: string

(Required) Specify the Web service to which the adapter connects. Include the name attribute. For example, name="StockTraderService".

This section contains the urls, wsdlURL, serviceURL, serviceTimeout, serviceRetries, request, mapFilePath, and security elements.

urls

(Required) Section containing the wsdlURL and serviceURL elements.

wsdlURL

Type: string

(Required) The URL for the Web service's WSDL.

serviceURL

Type: string

(Dependent required) Required only if you want to call the Web service at a different endpoint than what is specified in the wsdlURL element. For example, for testing purposes or tcpMon.

serviceTimeout

Type: integer

(Required) Specifies the amount of time the adapter waits before timing out the connection with the Web service.

serviceRetries

Type: integer

(Required) Specifies the number of times the adapter retries each service endpoint if it fails to connect.

request

Type: string

(Required) Section containing the param element. Specifies the Web service request. Includes the action attribute which specifies the action performed by the Web service operation that is being called.

param

Type: string

(Required) Specify the input elements to the Web service. You can specify multiple param elements. Includes these attributes:
  • name (Required) the name of the Web service operation that is called.
  • savedVarName (Optional) the name of the variable listed in the mapping file. It allows the last value from a previous call to be used as the value for the next call.
  • initValue (Required) The initial value that is sent to the Web service. This value is sent every time unless the savedVarName attribute is specified, in which case the last value of the associated field is used, as specified in the mapping file.
mapFilePath

Type: string

(Required for adapter operation and schema discovery) Specify a valid path to the mapping file for the adapter. If sandboxing is enabled, this file must reside in the <sandbox-base-directory>/adapters/<workspace-name> or $STREAMING_HOME/adapters/webservices directory or one of their subdirectories. If the file is in a different location, the adapter will not be able to successfully connect to Event Stream Processor.

security

(Required) Section containing the adapter security configuration. The adapter supports HTTPS protocol, HTTP basic access authentication, WS policy security, and transport level security. Specify either WS policy security or transport level security.

This section contains the sslTrustStore and sslTrustStorePassword elements, as well as the configuration elements for either WSPolicy security or TransportUsernameToken security.
Note You can enable only one of HTTP basic access authentication, WS policy security, or transport level security at a time.
sslTrustStore

Type: string

(Required only if ESP projects are running in SSL mode) Specify the path to the trust store file containing the server's certificate.

SOAP Input Transporter: HTTP Basic Access Authentication Elements
XML Element  
BasicAccessAuthentication

(Required only if using HTTP basic access authentication) Stores the credentials used to authenticate against a Web service that is set up with HTTP basic access authentication. Element containing the credentials, User, Password, RSAKeyStore, RSAKeyStorePassword and EncryptionAlgorithm elements for WS policy security.

credentials

(Optional) Element containing the User, Password, RSAKeyStore, RSAKeyStorePassword and EncryptionAlgorithm elements.

User

Type: string

(Required) Specifies the user name required to connect to the Web service.

Password

Type: string

(Required) Specifies the password required to connect to the Web service. Includes an encrypted attribute indicating whether the Password value is encrypted. Default value is false. If set to true, the password value is decrypted using RSAKeyStore and RSAKeyStorePassword.

RSAKeyStore

Type: string

(Optional) Specify the location of an RSA keystore file which contains the key used to encrypt or decrypt the password set in the Password element.

RSAKeyStorePassword

Type: string

(Optional) Stores the password to the RSA keystore file specified in the Keystore element.

EncryptionAlgorithm

Type: string

(Optional) Specifies the algorithm that is used to decrypt the password specified in the Password element, if encrypted. For example, RSA.

SOAP Input Transporter: WS Policy Security Elements
element Description
WSPolicy

(Required only if using WS policy security) Element containing the credentials, User, Password, RSAKeyStore, RSAKeyStorePassword, policyClass, and param elements for WS policy security.

credentials

(Optional) Element containing the User and Password, RSAKeyStore, and RSAKeyStorePassword elements.

User

Type: string

(Optional) Specifies the user name required to connect to the Web service.

Password

Type: string

(Optional) Specifies the password required to connect to the Web service. Includes an "encrypted" attribute indicating whether the Password value is encrypted. Default value is false. If set to true, the password value is decrypted using RSAKeyStore and RSAKeyStorePassword.

RSAKeyStore

Type: string

(Optional) Specify the location of an RSA keystore file which contains the key used to encrypt or decrypt the password set in the Password element.

RSAKeyStorePassword

Type: string

(Optional) Stores the password to the RSA keystore file specified in the Keystore element.

policyClass

Type: string

(Required only if using WS policy security) Specifies the plugin class to use that provides the policy information to the system. This class must extend from the class com.sap.esp.adapter.ws.security.WSPolicy.

param

Type: string

(Optional) Specifies the elements needed by the security mechanism of the WS policy. Includes "name" and "value" attributes.

SOAP Input Transporter: Transport Level Security Elements
element Description
TransportUsernameToken

(Required only if using transport level security) Element containing the credentials, User, Password, RSAKeyStore, RSAKeyStorePassword, and EncryptionAlgorithm elements. This type of security uses a username/token which is signed at the transport level.

credentials

(Required) Element containing the User, Password, RSAKeyStore, RSAKeyStorePassword, and EncryptionAlgorithm elements. Specifies credentials for transport level security.

User

Type: string

(Required) Specifies the user name required for connecting to the Web service.

Password

Type: string

(Required) Specifies the password required to connect to the Web service. Includes an "encrypted" attribute indicating whether the Password value is encrypted. Default value is false. If set to true, the password value is decrypted using RSAKeyStore and RSAKeyStorePassword.

RSAKeyStore

Type: string

(Optional) Specify the location of an RSA keystore file which contains the key used to encrypt or decrypt the password set in the Password element.

RSAKeyStorePassword

Type: string

(Optional) Stores the password to the RSA keystore file specified in the Keystore element.

EncryptionAlgorithm

Type: string

(Optional) Specifies the algorithm that is used to decrypt the password specified in the Password element, if encrypted. For example, RSA.

SOAP Input Transporter: Working Directory Elements
element Description
workingDir

Type: string

(Required) Element containing the proxy, host, port, and nonProxyHost elements.

The directory where temporary adapter files are written. These files are cleaned up when the adapter shuts down.

proxy

(Optional) Element containing the host, port, and nonProxyHosts elements. These properties specify a proxy server address through which the HTTP traffic is routed. This is often required in corporate networks, such as SAP, as individual machines do not connect directly to the external internet.

host

Type: string

(Optional) If the adapter needs to connect through a proxy, specify the host of the proxy through which the adapter is connecting.

port

Type: integer

(Optional) If the adapter needs to connect through a proxy, specify the host of the proxy through which the adapter is connecting.

nonProxyHosts

Type: string

(Optional) Specify the host names which should not be routed through the proxy host. These are addresses located within the intranet that can be reached directly.

ESP Connector Module: ESP Publisher

The ESP Publisher module obtains data from a transporter or formatter module and publishes it to the SAP Event Stream Processor project.

XML Element Description
Module

(Required) Element containing all information for this module. It contains a type attribute for specifying the module type.

For example, formatter.

InstanceName

Type: string

(Required) Instance name of the specific module you want to use. For example, MyInputTransporter.

Name

Type: string

(Required) Name of the module as defined in the modulesdefine.xml file. For example, <TransporterType>InputTransporter.

BufferMaxSize

Type: integer

(Advanced) Capacity of the buffer queue between this module and the next. The default value is 10240.

Parameters

(Required) Section containing the EspPublisherParameters element.

EspPublisherParameters

(Required) Section containing elements for the ESP publisher.

ProjectName

Type: string

(Required if adapter is running in standalone mode; optional if it is running in managed mode) Name of the ESP project to which the adapter is connected. For example, StreamingProject2.

This is the same project tag that you specify later in the adapter configuration file in the Name element within the Event Stream Processor (EspProjects) element.

If you are starting the adapter with the ESP project to which it is attached (that is, running the adapter in managed mode), you need not set this element as the adapter automatically detects the project name.

StreamName

Type: string

(Required if adapter is running in standalone mode; optional if it is running in managed mode) Name of the stream to which the adapter publishes data.

If you are starting the adapter with the ESP project to which it is attached (that is, running the adapter in managed mode), you need not set this element as the adapter automatically detects the stream name.

MaxPubPoolSize

Type: positive integer

(Optional) Maximum size of the record pool. Record pooling, also referred to as block or batch publishing, allows for faster publication since there is less overall resource cost in publishing multiple records together, compared to publishing records individually.

Record pooling is disabled if this value is 1. The default value is 256.

MaxPubPoolTime

Type: positive integer

(Optional) Maximum period of time, in milliseconds, for which records are pooled before being published. If not set, pooling time is unlimited and the pooling strategy is governed by maxPubPoolSize. No default value.

UseTransactions

Type: boolean

(Optional) If set to true, pooled messages are published to Event Stream Processor in transactions. If set to false, they are published in envelopes. The default value is false.

SafeOps

Type: boolean

(Advanced) Converts the opcodes INSERT and UPDATE to UPSERT, and converts DELETE to SAFEDELETE. The default value is false.

SkipDels

Type: boolean

(Advanced) Skips the rows with opcodes DELETE or SAFEDELETE. The default value is false.

SAP Event Stream Processor Elements

SAP Event Stream Processor elements configure communication between Event Stream Processor and the Web Services (SOAP) Input adapter.

XML Element Description
EspProjects

(Required) Element containing elements for connecting to Event Stream Processor.

EspProject

(Required) Element containing the Name and Uri elements. Specifies information for the ESP project to which the adapter is connected.

Name

Type: string

(Required) Specifies the unique project tag of the ESP project which the EspConnector (publisher/subscriber) module references.

Uri

Type: string

(Required) Specifies the total project URI to connect to the ESP project. For example, if you have SSL enabled, use esps://localhost:19011/ws1/p1.

Security

(Required) Element containing all the authentication elements below. Specifies details for the authentication method used for Event Stream Processor.

User

Type: string

(Required) Specifies the user name required to log in to Event Stream Processor (see AuthType). No default value.

Password

Type: string

(Required) Specifies the password required to log in to Event Stream Processor (see AuthType).

Includes an "encrypted" attribute indicating whether the Password value is encrypted. The default value is false. If set to true, the password value is decrypted using RSAKeyStore and RSAKeyStorePassword.

AuthType

Type: string

(Required) Method used to authenticate to Event Stream Processor. Valid values are:
  • server_rsa - RSA authentication using keystore
  • kerberos - Kerberos authentication using ticket-based authentication
  • user_password - LDAP, SAP BI, and Native OS (user name/password) authentication

If the adapter is operated as a Studio plug-in, AuthType is overridden by the Authentication Mode Studio start-up parameter.

RSAKeyStore

Type: string

(Dependent required) Specifies the location of the RSA keystore, and decrypts the password value. Required if AuthType is set to server_rsa, or the encrypted attribute for Password is set to true, or both.

RSAKeyStorePassword

Type:string

(Dependent required) Specifies the keystore password, and decrypts the password value. Required if AuthType is set to server_rsa, or the encrypted attribute for Password is set to true, or both.

KerberosKDC

Type: string

(Dependent required) Specifies host name of Kerberos key distribution center. Required if AuthType is set to kerberos.

KerberosRealm

Type: string

(Dependent required) Specifies the Kerberos realm setting. Required if AuthType is set to kerberos.

KerberosService

Type: string

(Dependent required) Specifies the Kerberos principal name that identifies the Event Stream Processor cluster. Required if AuthType is set to kerberos.

KerberosTicketCache

Type: string

(Dependent required) Specifies the location of the Kerberos ticket cache file. Required if AuthType is set to kerberos.

EncryptionAlgorithm

Type: string

(Optional) Used when the encrypted attribute for Password is set to true. If left blank, RSA is used as default.