Skip to Content
avatar image
Former Member

SOAP: call failed: java.io.IOException: invalid content type for SOAP: TEXT

Hi,

We have a scenario flat file to web service, it working fine with less number of record per message but when we the number of record increased it is throwing error:SOAP: call failed: java.io.IOException: invalid content type for SOAP: TEXT/HTML; HTTP 400 Bad Request in the SOAP receiver channel.

To make sure the payload is correct, I have test this payload with SOAP UI and its working fine.so no error with respect to message.

In the SOAP receiver channel we have used MTB with text/xml;charset=utf-8 as parameter Name -Transform.ContentType

As per thread http://forums.sdn.sap.com/thread.jspa?messageID=8296218#8296218 , I have changed the Tuning parameter in sxmb_adm with EO_MSG_SIZE_LIMIT 102400 and current ICM value for icm/HTTP/max_request_size_KB is 102400

This is not solve my problem.

Below is the log of adapter.

2012-02-06 16:58:54 Success Message successfully received by messaging system. Profile: XI URL: http://sapxid01:50000/MessagingSystem/receive/AFW/XI Credential (User): PIISUSER

2012-02-06 16:58:54 Success Using connection SOAP_http://sap.com/xi/XI/System. Trying to put the message into the receive queue.

2012-02-06 16:58:54 Success Message successfully put into the queue.

2012-02-06 16:58:54 Success The message was successfully retrieved from the receive queue.

2012-02-06 16:58:54 Success The message status set to DLNG.

2012-02-06 16:58:54 Success Delivering to channel: SOAP_FlexNet_Receiver

2012-02-06 16:58:54 Success MP: Entering module processor

2012-02-06 16:58:54 Success MP: Processing local module localejbs/AF_Modules/MessageTransformBean

2012-02-06 16:58:54 Success Transform: using Transform.Class: $identity

2012-02-06 16:58:54 Success Transform: transforming the payload ...

2012-02-06 16:58:54 Success Transform: successfully transformed

2012-02-06 16:58:54 Success MP: Processing local module localejbs/sap.com/com.sap.aii.af.soapadapter/XISOAPAdapterBean

2012-02-06 16:58:54 Success SOAP: request message entering the adapter with user J2EE_GUEST

2012-02-06 16:58:54 Error SOAP: call failed: java.io.IOException: invalid content type for SOAP: TEXT/HTML; HTTP 400 Bad Request

2012-02-06 16:58:54 Success SOAP: sending a delivery error ack ...

2012-02-06 16:58:54 Success SOAP: sent a delivery error ack

2012-02-06 16:58:54 Error SOAP: error occured: com.sap.aii.af.ra.ms.api.RecoverableException: invalid content type for SOAP: TEXT/HTML; HTTP 400 Bad Request: java.io.IOException: invalid content type for SOAP: TEXT/HTML; HTTP 400 Bad Request

2012-02-06 16:58:54 Error MP: Exception caught with cause com.sap.aii.af.ra.ms.api.RecoverableException: invalid content type for SOAP: TEXT/HTML; HTTP 400 Bad Request: java.io.IOException: invalid content type for SOAP: TEXT/HTML; HTTP 400 Bad Request

2012-02-06 16:58:54 Error Exception caught by adapter framework: invalid content type for SOAP: TEXT/HTML; HTTP 400 Bad Request

2012-02-06 16:58:54 Error Delivery of the message to the application using connection SOAP_http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: invalid content type for SOAP: TEXT/HTML; HTTP 400 Bad Request: java.io.IOException: invalid content type for SOAP: TEXT/HTML; HTTP 400 Bad Request.

2012-02-06 16:58:54 Error The message status set to NDLV.

Please help!!!

Regards,

Pradeep

Add comment
10|10000 characters needed characters exceeded

  • Follow
  • Get RSS Feed

3 Answers

  • Feb 07, 2012 at 02:47 AM

    Hello,

    I have test this payload with SOAP UI and its working fine.so no error with respect to message.

    In the SOAP receiver channel we have used MTB with text/xml;charset=utf-8 as parameter Name -Transform.ContentType

    Can you share to us the values of the HTTP Header (Request) in SOAP UI? You can find this in the Raw tab just after executing the request.

    Regards,

    Mark

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      Hi Mark,

      Thank for the reply.

      I did not get any request Header, but in the response Header below are the parameter came in SOAP UI while calling WS.

      X-AspNet-Version 2.0.50727

      Date Tue, 07 Feb 2012 14:25:57 GMT

      Vary Accept-Encoding

      #status# HTTP/1.1 200 OK

      Content-Length 275

      Content-Encoding gzip

      Set-Cookie ASP.NET_SessionId=kpggkzeyzl0rbc553ruiox55; path=/; HttpOnly

      Content-Type text/xml; charset=utf-8

      X-Powered-By ASP.NET

      Server Microsoft-IIS/7.5

      Cache-Control private

      Web service call is successful, but same request is not working through SAP PI adapter engine.

      Regards,

      Pradeep

  • Feb 07, 2012 at 03:15 AM

    Hi Pradeep,

    To an webservice several requests flow at one time. Thus Webservice has a limitation of number of records it can accept or produce at one moment. Once your request surpass this value you might experience similar error.

    First try and find out the exact max number of records for which webservice is functioning properly. Then you need to device means to access the webservice so that you can avoid data overflow error.

    Regards

    Anupam

    Add comment
    10|10000 characters needed characters exceeded

    • Hi Pradeep,

      with only 109 messages there should not be any errors from webservice due to data overflow. Generally the web-service starts giving errors if the number of records exceed 1000 or so. Now If the server cannot decode your request it can throw the same error. First, only separete 110 th record from the entire request (I assume you are sending some records to the web-server else if you are receiving, then you need to modify the request such that you get only 110th recod from the server).

      Now make an request only with this 110 th record and nothing else. If you get same error then there is a problem with data format being sent to server for this record and you need to remove this in mapping. If you do not get any errors then webserver might be having a limitation on the count of maximum number of records it can return to PI server. This might help you arrive at actual cause of the error.

      Regards

      Anupam

  • avatar image
    Former Member
    Feb 10, 2012 at 05:18 PM

    Hi,

    This issue has been fixed, for root cause analysis I have used TCP monitor tool and get the exacted content of payload and when payload is failing due to large message size.

    Issue is at web service level, 3rd party has change some configuration to accept the large request payload in web service.

    Thanks for all your support.

    Regards,

    Pradeep

    Add comment
    10|10000 characters needed characters exceeded