This flow would integrate external partners with legacy system (hence DIME) and needs to authenticate / authorize / validate (against schema as well as additional validation rules) the request / message before writing out the message to MQ queue/s for an existing system and a new system (via destination list). The input message is *not transformed for the destination systems apart from the DIME requests being changed to MIME (only package change; message payload is same).
*not - Apart from the matter of conjoining the incoming Http headers with the MIME payload as explained below. This is required by the existing destination system and is currently done by a web service proxy (Java) which is to be replaced by the flow above.
NB:The Rest Request node is for calls to security API for authentication / authorization of the incoming creds (Http Basic). It can be ignored for this issue.
When a MIME message received over Http is written to MQ queues, i need to pass in the Http headers for the legacy system as it looks for a top-level MIME Authorization header (yes, it does AA again). In addition, the existing WS proxy passes in all Http headers as top-level MIME headers of the MIME payload written to MQ queue. The flow has to do the same.
IIB does this as expected by a simple input root assignment to output root whereby the input Http headers are getting serialized into the output MIME message such that the Http headers become the MIME top-level headers. The resulting MIME message as it appears on the destination MQ queue looks like this:
Code:
POST http://xxxxxx:9100/do/something HTTP /1.1
soapaction: ""
connection: close
content-type: multipart/related; type="text/xml"; start="<309C081D197A102A4DFBF1F31CFB8474>"; boundary="----=_Part_4_30023838.1290461999016"
authorization: Basic XXXXXXXXXXXXXXXXXXXXXXXXXXXX
user-agent: Jakarta Commons-HttpClient/3.1
host: xxxxxx:9100
content-length: 18600
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header>REST TRUNCATED FOR BREVITY...
Issue: The issue is that the first line (POST...) is not a valid MIME header. As a workaround i delete OutputRoot.HTTPInputHeader."X-Original-HTTP-Command" before MQOutput.
Any explanation of why IIB doesn't serialize the said header as X-Original-HTTP-Command: POST... like the other Http headers will be appreciated.
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum