cancel
Showing results for 
Search instead for 
Did you mean: 

CANNOT_READ_PAYLOAD

venky_b
Participant
0 Kudos

Hi Experts,

I am doing soap->xi->RFC scenario.

I am testing the abv scenario, the problem is when i fire the soap request through Altova XML spy the message is reaching the XI system. The reached message doesnt contain the payload. hence in Integration engine, mapping step it is giving the error <SAP:Code area="MAPPING">CANNOT_READ_PAYLOAD</SAP:Code> . And i am getting the following response in XML spy.

<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">

<SOAP:Body>

<SOAP:Fault>

<faultcode>SOAP:Server</faultcode>

<faultstring>Server Error</faultstring>

<detail>

<s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">

<context>XIAdapter</context>

<code>RecoverableException</code>

<text><![CDATA[

com.sap.aii.af.ra.ms.api.RecoverableException: com.sap.aii.af.ra.ms.api.DeliveryException: XIServer:CANNOT_READ_PAYLOAD:

at com.sap.aii.af.mp.soap.ejb.XISOAPAdapterBean.process(XISOAPAdapterBean.java:919)

at com.sap.aii.af.mp.module.ModuleLocalLocalObjectImpl3.process(ModuleLocalLocalObjectImpl3.java:103)

at com.sap.aii.af.mp.ejb.ModuleProcessorBean.process(ModuleProcessorBean.java:258)

at com.sap.aii.af.mp.processor.ModuleProcessorLocalLocalObjectImpl0.process(ModuleProcessorLocalLocalObjectImpl0.java:103)

at com.sap.aii.af.mp.soap.web.MessageServlet.callModuleProcessor(MessageServlet.java:167)

at com.sap.aii.af.mp.soap.web.MessageServlet.doPost(MessageServlet.java:424)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)

at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)

at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)

at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)

at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)

at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)

at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)

at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)

at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)

at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)

at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

at java.security.AccessController.doPrivileged(Native Method)

at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)

at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)

]]></text>

</s:SystemError>

</detail>

</SOAP:Fault>

</SOAP:Body>

</SOAP:Envelope>

I gave correct URL in the wsdl.

If any body knpw wat would be the problem plz let me knw

Thanks Inadvance

Venkatesh

Edited by: venkatesh bs on Aug 22, 2008 1:02 PM

Accepted Solutions (0)

Answers (5)

Answers (5)

venky_b
Participant
0 Kudos

I Selected the option Do not use Soap envelop under Convertion. I unchecked this option it started working.

aashish_sinha
Active Contributor
0 Kudos

Hi,

Check whether your payload message which you are passing in HTTP Client tool is correct or not, try to copy the payload from Integration Repository while testing your mapping program.

Also check the Integration Engine Configuration runtime parameters,

Open Transaction SXMB_ADM -> Integration Engine Configuration -> Change Specific Configuration

Check the values of below given parameters for runtime category, these values must be maintained:

LOGGING, LOGGING_SYNC, LOGGING_PROPAGATION, TRACE_LEVEL and TRACE_LEVEL_PROPAGATION.

Regards

Aashish Sinha

Former Member
0 Kudos

HI,

is possible that a system sends blank messages (Completely blank) or that messages have incomplete data, like only XML-tags without data.

so better check the message first.

Also i have sth for you with SAP note :- 1060723

Reason and Prerequisites

An XI message is made up of several parts, such as:

a main header that contains, for example, the message ID, sender and receiver of the message,

a payload,

any other attachments,

a manifest containing the references to the payload and the attachments.

In some scenarios, you work with XI messages that do not have a payload. From a technical point of view, there are two types of messages in this case:

1. The message has a payload that is also listed in the manifest, but this payload has a length of zero.

2. The payload is missing and is also not listed in the manifest.

Neither of these cases is supported in mapping. This means that if you want to use mapping to a message like this at runtime, it triggers an exception with the error CANNOT_READ_PAYLOAD.

Solution

Since you implemented the corrections from Note 1060723, mapping supports the first type of message. When you implement the corrections from this note, mapping also supports messages of the second type. The corrections are contained in:

NetWeaver '04, Support Package 21 and

NetWeaver 7.0, Support Package 14

You can implement the correction instructions in advance. These instructions concern the ABAP stack of the Integration Server.

Make sure that your mapping program can also handle an empty input. An empty document is not a well-formed XML document. Therefore you cannot use XSLT mappings and message mappings. You can use Java mappings and ABAP mappings.

Messages for which split mapping is used, or which are transformed in the BPE, must not have an empty payload.

Regards,

Sumit Gupta

prateek
Active Contributor
0 Kudos

Try regenrating the wsdl and run ur scenario again. Make sure that the QOS in CC matches with the type of message interface used to genarate the wsdl.

Regards,

Prateek

Former Member
0 Kudos

hi

check the xml structure and test the mapping,accordingly

check the payload in sxmb_moni.

check the notes 1060723,1082111

regards

kummari

Former Member
0 Kudos

[Thread with ur same issue|;