IB client (outbound) thread: Normal message flow
For an IB client (outbound) thread, the normal message flow for the request/response messages between an Intelligent Broker client and a server is:
- The Intelligent Broker
client thread composes an ibmime message and
sends it to Intelligent Broker which transmits it to the remote endpoint.
The ibmime message must have these headers:
-
IBSite
andIBThread
, which identify the thread sending the message. -
Content-Type
: This is "multi-part/mixed" because messages can have attachments. Even without attachments, the message is still a multi-part message with a single part, that is, the message body itself.
-
- Intelligent Broker sends the message to the remote endpoint, as configured in the thread properties.
- When the remote endpoint sends back a response, that reply is forwarded back to the IB client thread.
The Intelligent Broker client thread in the system must select the Inbound tab. This must be selected to receive the
reply from the remote endpoint, forwarded by Intelligent Broker. If the box is not
selected, then any reply from the remote endpoint is not forwarded by Intelligent
Broker. The forwarded message is an ibmime
message with a distinct ibmime header, IBStatus
with the value APP_RESP, indicating this is a
response.
The WSDL for the remote endpoint may specify that it is a
request/response type of service, or a one-way type. The latter means that the web
service does not return meaningful data as a reply. It is only an indication that it
has received the request. The ibmime message sent
back to the Intelligent Broker client, by Intelligent Broker, has a distinct header
IBStatus
with the value APP_ACCEPT. This
indicates the request has been accepted by the remote end. Otherwise, no reply is
received.
To receive this APP_ACCEPT, the thread that originates the request must select the
check box. This requires that Intelligent Broker always send back a reply, even when the remote web service is one-way, per its WSDL.When that box is not selected, Intelligent Broker does not send any reply back to the thread originating the request. It does not matter that the requested web service happens to be of request/response type per its WSDL.
The IBStatus
of APP_RESP and
APP_ACCEPT represent normal responses from the remote endpoint.