Troubleshooting
Problem
SOAP Inbound Service generate SOAP-FAULT
Symptom
The SOAP Inbound service fails with a SOAP-FAULT and error message "An unknown error occurred while processing SOAP document"
The system log contains:
[2014-11-24 13:17:48.464] ERROR
[2014-11-24 13:17:48.465] ERROR [1416835068464] null
[2014-11-24 13:17:48.466] ERRORDTL [1416835068464]java.lang.NullPointerException
at java.lang.System.arraycopy(Native Method)
at com.sterlingcommerce.woodstock.packager.MIME.MIMEEntity
at com.sterlingcommerce.woodstock.services.soap.soapinbound.SoapInboundServiceImpl.handleSOAPResponse(SoapInboundServiceImpl.java:541)
at com.sterlingcommerce.woodstock.services.soap.soapinbound.SoapInboundServiceImpl.processDataImpl(SoapInboundServiceImpl.java:133)
at com.sterlingcommerce.woodstock.services.soap.soapinbound.SoapInboundServiceImpl.processData(SoapInboundServiceImpl.java:226)
at com.sterlingcommerce.woodstock.workflow.activity.engine.ActivityEngineHelper.invokeService(ActivityEngineHelper.java:1818)
at com.sterlingcommerce.woodstock.workflow.activity.engine.ActivityEngineHelper.nextMainLogic(ActivityEngineHelper.java:631)
at com.sterlingcommerce.woodstock.workflow.activity.engine.ActivityEngineHelper.next(ActivityEngineHelper.java:362)
at com.sterlingcommerce.woodstock.workflow.queue.WorkFlowQueueListener.doWork(WorkFlowQueueListener.java:442)
at com.sterlingcommerce.woodstock.workflow.queue.WorkFlowQueueListener.run(WorkFlowQueueListener.java:351)
at com.sterlingcommerce.woodstock.workflow.queue.WorkFlowQueueListener.onMessage(WorkFlowQueueListener.java:197)
at com.sterlingcommerce.woodstock.workflow.queue.WorkFlowQueueListener.onMessage(WorkFlowQueueListener.java:184)
at com.sterlingcommerce.woodstock.workflow.queue.wfTransporter.run(wfTransporter.java:444)
at com.sterlingcommerce.woodstock.workflow.queue.BasicExecutor$Worker.run(BasicExecutor.java:508)
at java.lang.Thread.run(Thread.java:744)
[2014-11-24 13:17:48.466] ERROR 000000000000 GLOBAL_SCOPE
java.lang.NullPointerException
at java.lang.System.arraycopy(Native Method)
at com.sterlingcommerce.woodstock.packager.MIME.MIMEEntity.loadData(MIMEEntity.java:1141)
at com.sterlingcommerce.woodstock.services.soap.soapinbound.SoapInboundServiceImpl.handleSOAPResponse(SoapInboundServiceImpl.java:541)
at com.sterlingcommerce.woodstock.services.soap.soapinbound.SoapInboundServiceImpl.processDataImpl(SoapInboundServiceImpl.java:133)
at com.sterlingcommerce.woodstock.services.soap.soapinbound.SoapInboundServiceImpl.processData(SoapInboundServiceImpl.java:226)
at com.sterlingcommerce.woodstock.workflow.activity.engine.ActivityEngineHelper.invokeService(ActivityEngineHelper.java:1818)
at com.sterlingcommerce.woodstock.workflow.activity.engine.ActivityEngineHelper.nextMainLogic(ActivityEngineHelper.java:631)
at com.sterlingcommerce.woodstock.workflow.activity.engine.ActivityEngineHelper.next(ActivityEngineHelper.java:362)
at com.sterlingcommerce.woodstock.workflow.queue.WorkFlowQueueListener.doWork(WorkFlowQueueListener.java:442)
at com.sterlingcommerce.woodstock.workflow.queue.WorkFlowQueueListener.run(WorkFlowQueueListener.java:351)
at com.sterlingcommerce.woodstock.workflow.queue.WorkFlowQueueListener.onMessage(WorkFlowQueueListener.java:197)
at com.sterlingcommerce.woodstock.workflow.queue.WorkFlowQueueListener.onMessage(WorkFlowQueueListener.java:184)
at com.sterlingcommerce.woodstock.workflow.queue.wfTransporter.run(wfTransporter.java:444)
at com.sterlingcommerce.woodstock.workflow.queue.BasicExecutor$Worker.run(BasicExecutor.java:508)
at java.lang.Thread.run(Thread.java:744)
Cause
Primary document at the SOAP Inbound step did not contain the HTTP header
Environment
ALL
Diagnosing The Problem
Review the primary document at the SOAP Inbound step. The SOAP Inbound service expects a raw message including the HTTP header.
If the primary document did not contain the HTTP header you need to verify the HTTP configuration.
If you use the SOAP Inbound service after a "Http Client Post Service" you need to verify the value for RawResponse.
Resolving The Problem
Change the HTTP configuration so that the HTTP header is available for the SOAP Inbound service.
In the customer BP the customer used the "Http Client Post Service" with parameter setting below:
<assign to="RawResponse" from="b2b-raw-response/text()"></assign>
But the process data did not contain a b2b-raw-response tag.
You need to change the assignment in the "HTTP Client Post Service" to
<assign to="RawResponse">true</assign>
or
you create a b2b-raw-response tag with value "true" in the process data with statement below:
<assign to="b2b-raw-response">true</assign>
Was this topic helpful?
Document Information
Modified date:
26 November 2019
UID
swg21692222