Overview of SOAP Related Resources

Project resources must be configured so that TIBCO BusinessEvents can send and receive SOAP messages.

The resources to configure are as follows:

SOAP Destinations
When a correctly configured HTTP destination receives a SOAP request, the SOAP serializer deserializes the SOAP message to its corresponding event. That event has to be inherited from a SOAPEvent. The event payload contains the SOAP envelope.
SOAP Events
To create a SOAP event, create a SimpleEvent that inherits a SOAPEvent. It makes event configuration easier. Its payload has a message root element having an Envelope child element. The root element contains Header and Body elements, and the Body element has a Fault element. You can further configure these elements using the payload editor.
SOAP messages (and events) can have attachments.
Note: For outbound SOAP events, ensure that the default destination is specified. If it is not specified, an incorrect SOAP message, with “Message” as its root instead of “Envelope”, is sent out.

Also, ensure that the default destination for the SOAP event uses com.tibco.cep.driver.http.serializer.SOAPMessageSerializer.

SOAP Encoding
Only the SOAP document/literal form of encoding is supported.
Rules and Rule Functions
A rule in the project accesses the SOAP event payload as needed using the mapper or SOAP catalog functions. The rule puts the SOAP response into the payload of a SOAPEvent that is sent to the client. The SOAP serializer sends the SOAP response to the client.
SOAP Catalog Functions
SOAP catalog functions enable you to access and process the contents of the following elements in the event payload of an incoming SOAPEvent, and add elements to the outbound SOAPEvent:
  • Header
  • Body
  • Fault
  • Attachment
Mapping of SOAP Request URI to Destination
For SOAP requests, the header property SOAPAction represents the destination name, and the requestURI represents the channel URI. TIBCO BusinessEvents combines the SOAPAction and requestURI to create a destination URI. It maps the request with a destination having same URI as the newly created URI.
For example, if the requestURI of a request is /QueryBooks and the value of SOAPAcion is QueryBooksByAuthor, then TIBCO BusinessEvents engine maps the request with a destination having /QueryBooks/QueryBooksByAuthor URI if it exists.