...
Send the following request using a SOAP client like SoapUI, and monitor the message using TCPMon.
Code Block language html/xml <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://services.samples" xmlns:xsd="http://services.samples/xsd"> <soapenv:Header/> <soapenv:Body> <ser:getQuote> <ser:request> <xsd:symbol>Foo<symbol>foo</xsd:symbol> </ser:request> </ser:getQuote> </soapenv:Body> </soapenv:Envelope>
Notice that the request data is inside a SOAP envelope. When the request was monitored through TCPMon before it was sent to the ESB, it was structured as follows:
Code Block POST /services/EnvelopeUnwrapProxy HTTP/1.1 Accept-Encoding: gzip,deflate Content-Type: text/xml;charset=UTF-8 SOAPAction: "urn:getQuote" Content-Length: 385 Host: 127.0.0.1:8281 Connection: Keep-Alive User-Agent: Apache-HttpClient/4.1.1 (java 1.5) <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://services.samples" xmlns:xsd="http://services.samples/xsd"> <soapenv:Header/> <soapenv:Body> <ser:getQuote> <ser:request> <xsd:symbol>Foo<symbol>foo</xsd:symbol> </ser:request> </ser:getQuote> </soapenv:Body> </soapenv:Envelope>
The request sent to the back-end Axis2 server has the following structure:
Code Block POST /services/SimpleStockQuoteService HTTP/1.1 Content-Type: application/xml; charset=UTF-8 Accept-Encoding: gzip,deflate SOAPAction: urn:getQuote Transfer-Encoding: chunked Host: localhost:9000 Connection: Keep-Alive User-Agent: Synapse-HttpComponents-NIO e0 <ser:getQuote xmlns:ser="http://services.samples"> <ser:request> <xsd:symbol xmlns:xsd="http://services.samples/xsd">Foo<>foo</xsd:symbol> </ser:request> </ser:getQuote> 0
This means that the SOAP envelope was removed by the ESB.
...