I am migrating a service that was built to run on WSO2 ESB 4.0 to WSO2 ESB 4.7 and have run into a problem. The service I am migrating is a custom proxy with a SOAP 1.2 binding interface. This proxy makes outbound calls to a SOAP 1.1 based service.
The ESB 4.0 server is using the Http NIO transport and it appears that transport would use a message formatter (I'm guessing) to manage the SOAP message conversion in the ESB between SOAP 1.1 and 1.2 when sending a response message back to the client.
The ESB 4.7 is using the Http PassThrough transport, which does not have the SOAP message conversion capabilities, so SOAP envelope namespaces and HTTP header information has to be changed manually in a sequence.
Is it possible to configure both Http PassThrough and Http NIO to be active on the same ESB and configure individual services to use one or the other? I've tried, and have been unsuccessful, and my research so far seems to indicate one or the other.
EDIT1 - Response to RaviU:
Thanks RaviU. The ESB 4.7.0 will support automatic conversion of SOAP 1.1 to 1.2 if it is configured to use the HTTP NIO transport. In other words, it behaves like the ESB 4.0 server. The automatic conversion of SOAP 1.1 to 1.2 does not appear to occur when the ESB 4.7.0 is configured to use HttpPassThrough transport. This makes sense because that transport does not care about content type. The problem I have when using HttpPassThrough is that I have to manually change the SOAP envelope to 1.2 and set the appropriate http headers before sending back to the client. This is because they are changed when the service calls the SOAP 1.1 service. If I use the HTTP NIO transport, the manual steps are taken care of automatically by the ESB. I'm assuming this is done by a message formatter before the message is returned to the client.