cancel
Showing results for 
Search instead for 
Did you mean: 

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

Former Member
0 Kudos

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

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

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

anupam_ghosh2
Active Contributor
0 Kudos

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

Former Member
0 Kudos

Hi Anupam,

SOAP receiver channel is working with 109 records per message, but when I increase to 110 or more records per message it is throwing error.

Regards,

Pradeep

Edited by: Pradeep Kumar Shukla on Feb 8, 2012 2:30 AM

anupam_ghosh2
Active Contributor
0 Kudos

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

markangelo_dihiansan
Active Contributor
0 Kudos

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

Former Member
0 Kudos

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