My scenario looks simple SPROXY => XI => WebService with synchronous communication.
When I'm trying to connect into my WebService using testing functionality of SPROXY I'm still finish with error:
com.sap.aii.af.ra.ms.api.DeliveryException: invalid content type for SOAP: TEXT/PLAIN; HTTP 411 Length Required
I found in few topics on forum that this error message is related due to missing wsdl information (see also thi PDF: https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/40728f7b-0401-0010-d9bc-8c73884a3789)
I asked WebService author where I can find wsdl file, but he said that they do not have them (!). I tried also to check the place of wsdl file adding to WebService adress ?wsdl - without success!
So only one information which I've is a server (target) address, port number and how my soap request should looks like. Using those information I'm able to connect into WebService using Altova or SoapUI but from XI I'm not able.
I used also TCPGateway to trace soap request and I see that Altova sends this info WebService
POST / HTTP/1.1 Content-Type: text/xml; charset=UTF-8 SOAPAction: "" User-Agent: EasySoap++/0.8.0 Host: 192.168.132.179:54000 Content-Length: 431 Connection: Keep-Alive Cache-Control: no-cache <E:Envelope xmlns:E="http://schemas.xmlsoap.org/soap/envelope/" xmlns:A="http://schemas.xmlsoap.org/soap/encoding/" xmlns:s="http://www.w3.org/2001/XMLSchema-instance" xmlns:y="http://www.w3.org/2001/XMLSchema" E:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><E:Body><m:Sd2Ids_SzfExport xmlns:m="http://www.dat.de/sdii/ids/Sd2SOAP.wsdl"><arg1>1234567899-0</arg1><arg2>2</arg2></m:Sd2Ids_SzfExport></E:Body></E:Envelope>
but XI sends a little bit different
POST / HTTP/1.0 Accept: */* Host: 192.168.132.179:54000 User-Agent: SAP-Messaging-com.sap.aii.messaging/1.0505 Content-ID: <soap-a4773bc021ce11dda3fd000c29ee261e[at]sap.com> Content-Type: text/xml; charset=utf-8 Content-Disposition: attachment;filename="soap-a4773bc021ce11dda3fd000c29ee261e[at]sap.com.xml" Content-Description: SOAP Content-Length: 234 SOAPACTION: "Sd2Ids_SzfExport" X-XMB_WS_ENCODED: version=3.0&MessageClass=ApplicationMessage&ProcessingMode=synchronous&MessageId=dd21ce4f-4cc1-9ff1-82a0-0002a547e483&TimeSent=2008-05-14T15%3A56%3A27Z&Sender.Party=%3A%3A&Sender.Service=DBMIFD&Receiver.Party=%3A%3A&Receiver.Service=dat_de_silverdat_II&Interface=http%3A%2F%2Fwww.dat.de%2Fsdii%2Fids%2FSd2SOAP.wsdl%5ESzfExport_XI2SD2&QualityOfService=BestEffort <SOAP:Envelope xmlns:SOAP='http://schemas.xmlsoap.org/soap/envelope/'><SOAP:Header/><SOAP:Body><ns0:Sd2Ids_SzfExport xmlns:ns0='http://www.dat.de/sdii/ids/Sd2SOAP.wsdl'><arg1/><arg2/></ns0:Sd2Ids_SzfExport></SOAP:Body></SOAP:Envelope>
First difference which I see here is information that XI use HTTP 1.0 and Altova is using HTTP 1.1. I do not know why XI use 1.0 when I set SOAP 1.1. Maybe it is because XI is set to use HTTP 1.0 (but there is no other option)
I will reward (as usually) all helping answers with points