SoapEventSource
The SoapEventSource
provides a SOAP web service API for the event system. The SOAP service provider is published at a configured endpoint and listens for SOAP messages. XPath queries are used to map the incoming message data to the generated event data.
Authentication is handled by means of two-way SSL.
Configuration
Name | Type, usage constraints, defaults | Description |
---|---|---|
endpoint | required: paraVal default: none type: URL of the endpoint | The URL which is used to create the service. |
threads | optional: paraVal default: 10 type: integer | The number of threads the HTTP server uses to handle client requests. |
sslSettings | optional: paraMap default: none type: string/string | The SSL configuration settings used for this HTTP server. It uses the Java system property names to set up the key and trust stores. |
data | required: paraMap default: none type: string/xpath | Defines the event's data fields using XPath queries. The current node in the XPath queries is the SOAP message's body. |
synchronous | optional: paraVal default: false type: boolean | Defines whether the SoapEventSource runs in synchronous mode, i.e. returns the result of the triggered jobs. |
xpathNamespaces | optional: paraMap default: none type: string/string (uri) | Register namespace prefixes to the specified URIs. Those prefixes are used to parse the XPath expressions. The URIs specified have to match the URIs in the XML document. |
Example
Register a SOAP web service at URL
http://localhost:1234/nevisdp/soap
Process message bodies of type:
<person id="someId">
<name>First Last</name>
<email>[email protected]</email>
</person>
<eventSource name="soapEvents" type="SoapEventSource">
<dp:paraVal name="endpoint" value="http://localhost:1234/nevisdp/soap" />
<dp:paraMap name="data">
<value name="id" value="./person/@id" /> (mailto:@id)
<value name="name" value="./person/name/text()" />
<value name="email" value="./person/email/text()" />
</dp:paraMap>
</eventSource>