Skip to Content

Archived discussions are read-only. Learn more about SAP Q&A

SOAP to IDOC scenario: java.lang.NullPointerException

Our trading partners currently post their xml files directly to our Integration Engine, where they are converted to idocs and posted to ECC. I am now trying to change this scenario to a SOAP to IDoc scenario so that we can process the files through the Adapter Engine using HTTPS. But I am running into an error when trying to post an xml file and I'm wondering what I am missing.

My SOAP communication channel is configured as follows:

Transport protocol: HTTP

Message protocol: SOAP 1.1

Adapter engine: Integration Server

HTTP Security Level: HTTP

Do Not Use Soap Envelope: *Checked*

Default interface and namespace have been specified

QoS: Exactly Once

If I post an xml file to this channel using the RWB test tool, I receive message java.lang.NullPointerException. However, I can find the message via the Message Monitoring in the RWB, with versions for both the AE and IE, each with status Successful. The idoc is created and successfully posted to ECC.

If I post this same file to the same URL using a third-party tool, I get the same error message along with more details (listed below). Futhermore, a message does *not* show up in the RWB and thus does not get converted to an idoc and posted to ECC.

Any ideas??? Thank you.

<?xml version="1.0" ?>

- <!-- see the documentation

-->

- <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>ADAPTER.JAVA_EXCEPTION</code>

- <text>

- <![CDATA[

java.lang.NullPointerException

at com.sap.aii.messaging.net.MIMEInputSource.decodeContentType(MIMEInputSource.java:425)

at com.sap.aii.messaging.net.MIMEInputSource.readBody(MIMEInputSource.java:323)

at com.sap.aii.messaging.net.MIMEServletInputSource.parse(MIMEServletInputSource.java:58)

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

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:401)

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

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

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

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

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

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

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

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>

Not what you were looking for? View more on this topic or Ask a question