Skip to Content
0
May 14, 2008 at 04:27 PM

com.sap.aii.af.ra.ms.api.DeliveryException: invalid content type error

33 Views

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