Siddu
Siddu

Reputation: 91

How to send IDOC's to a SAP system through WSO2 ESB

I have gone through the below document and configured:

https://docs.wso2.com/display/ESB481/SAP+Integration

I have to send an IDoc to a SAP-created proxy with IDoc structure but when I try to hit that proxy, I'm getting a clueless error (see log below):

null pointer exception

Not able to find what is the root cause.

Can someone help on this?

Proxy:

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
       name="Test"
       transports="http"
       statistics="enable"
       trace="enable"
       startOnLoad="true">
   <target>
      <inSequence>
         <payloadFactory media-type="xml">
            <format>
            ------------------
            </format>
            <args/>
         </payloadFactory>
         <send>
            <endpoint name="sapidocendpoint">
              <address uri="idoc:/sapdelts"/>
            </endpoint>
         </send>
      </inSequence>
      <outSequence/>
   </target>
   <parameter name="serviceType">proxy</parameter>
   <description/>
</proxy>

Error log:

TID: [0] [ESB] [2016-07-07 08:20:22,543]  WARN {org.apache.synapse.endpoints.EndpointContext} -  
   Endpoint : sapidocendpoint will be marked SUSPENDED as it failed {org.apache.synapse.endpoints.EndpointContext}

TID: [0] [ESB] [2016-07-07 08:20:22,543]  WARN {org.apache.synapse.endpoints.EndpointContext} -  
   Suspending endpoint : sapidocendpoint - current suspend duration is : 30000ms - Next retry after : Thu Jul 07 08:20:52 CLT 2016 {org.apache.synapse.endpoints.EndpointContext}

TID: [0] [ESB] [2016-07-07 08:20:22,543] ERROR {org.wso2.carbon.transports.sap.SAPTransportSender} -  
   Error while sending an IDoc to the EPR : idoc:/sapdelts {org.wso2.carbon.transports.sap.SAPTransportSender}
   java.lang.NullPointerException
      at org.wso2.carbon.transports.sap.idoc.DefaultIDocXMLMapper.closeStream(DefaultIDocXMLMapper.java:68)
      at org.wso2.carbon.transports.sap.idoc.DefaultIDocXMLMapper.getDocumentList(DefaultIDocXMLMapper.java:59)
      at org.wso2.carbon.transports.sap.SAPTransportSender.getIDocs(SAPTransportSender.java:163)
      at org.wso2.carbon.transports.sap.SAPTransportSender.sendMessage(SAPTransportSender.java:103)
      at org.apache.axis2.transport.base.AbstractTransportSender.invoke(AbstractTransportSender.java:112)
      at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
      at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.send(DynamicAxisOperation.java:185)
      at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.executeImpl(DynamicAxisOperation.java:167)
      at org.apache.axis2.client.OperationClient.execute(OperationClient.java:149)
      at org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(Axis2FlexibleMEPClient.java:482)
      at org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java:59)
      at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:338)
      at org.apache.synapse.endpoints.AbstractEndpoint.send(AbstractEndpoint.java:333)
      at org.apache.synapse.endpoints.AddressEndpoint.send(AddressEndpoint.java:59)
      at org.apache.synapse.mediators.builtin.CallMediator.mediate(CallMediator.java:114)
      at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:77)
      at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47)
      at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:131)
      at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:166)
      at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
      at org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:411)
      at org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:183)
      at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at java.lang.Thread.run(Thread.java:724)

TID: [0] [ESB] [2016-07-07 08:20:22,546] ERROR {org.apache.synapse.core.axis2.Axis2Sender} -
   Unexpected error during sending message out {org.apache.synapse.core.axis2.Axis2Sender}
   org.apache.axis2.AxisFault: Error while sending an IDoc to the EPR : idoc:/sapdelts
      at org.apache.axis2.transport.base.AbstractTransportSender.handleException(AbstractTransportSender.java:226)
      at org.wso2.carbon.transports.sap.SAPTransportSender.sendMessage(SAPTransportSender.java:136)
      at org.apache.axis2.transport.base.AbstractTransportSender.invoke(AbstractTransportSender.java:112)
      at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
      at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.send(DynamicAxisOperation.java:185)
      at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.executeImpl(DynamicAxisOperation.java:167)
      at org.apache.axis2.client.OperationClient.execute(OperationClient.java:149)
      at org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(Axis2FlexibleMEPClient.java:482)
      at org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java:59)
      at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:338)
      at org.apache.synapse.endpoints.AbstractEndpoint.send(AbstractEndpoint.java:333)
      at org.apache.synapse.endpoints.AddressEndpoint.send(AddressEndpoint.java:59)
      at org.apache.synapse.mediators.builtin.CallMediator.mediate(CallMediator.java:114)
      at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:77)
      at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47)
      at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:131)
      at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:166)
      at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
      at org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:411)
      at org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:183)
      at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at java.lang.Thread.run(Thread.java:724)
Caused by: java.lang.NullPointerException
      at org.wso2.carbon.transports.sap.idoc.DefaultIDocXMLMapper.closeStream(DefaultIDocXMLMapper.java:68)
      at org.wso2.carbon.transports.sap.idoc.DefaultIDocXMLMapper.getDocumentList(DefaultIDocXMLMapper.java:59)
      at org.wso2.carbon.transports.sap.SAPTransportSender.getIDocs(SAPTransportSender.java:163)
      at org.wso2.carb

Upvotes: 0

Views: 538

Answers (0)

Related Questions