Builder Mediator
The Builder Mediator can be used to build the actual SOAP message from a message coming in to ESB through the Message Relay. One usage is to use this before trying to log the actual message in case of an error. Also with the Builder Mediator ESB can be configured to build some of the messages while passing the others along.
In order to use the Builder mediator, BinaryRealyBuilder
should be specified as the message builder in the <ESB_HOME>/repository/conf/axis2/axis2.xml
file for at least one content type. The message formatter specified for the same content types should be ExpandingMessageFormatter
. Unlike other message builders defined in axis2.xml, the BinaryRelayBuilder works by passing through a binary stream of the received content. The Builder mediator is used in conjunction with the BinaryRelayBuilder when we require to build the binary stream into a particular content type during mediation. We can specify which message builder should be used to build the binary stream using the Builder mediator.
By default, Builder Mediator uses the axis2
default Message builders for the content types. User can override those by using the optional messageBuilder
configuration. See sample configurations of Message builder and Message formatter in Configuring Message Relay.
Like in axis2.xml
user has to specify the content type and the implementation class of the messageBuilder
. Also user can specify the message formatter
for this content type. This is used by the ExpandingMessageFormatter
to format the message before sending to the destination.
Syntax
<syn:builder xmlns:syn="http://ws.apache.org/ns/synapse"> <syn:messageBuilder contentType="" class="" [formatterClass=""]/> </syn:builder>