Support Article

Soap connection is being failed at InvokeAxis2 activity

SA-30734

Summary



Soap connector fails at InvokeAxis2 activity.

Error Messages



2016-11-17 06:01:04,981 [    WebContainer : 4] [TABTHREAD1] [ XXXXXBBB:01.01.01] (nvoke.Rule_Connect_SOAP.Action) WARN  |Rule-Connect-SOAP.ABC-Abc-XXXXX-YY-AAAAXXXXService-XXXXXX-.invokeService XXXXXXXXXXX- com.pega.pegarules.pub.services.RemoteApplicationException: SOAP service failed
com.pega.pegarules.pub.services.RemoteApplicationException: SOAP service failed
               at com.pegarules.generated.activity.ra_action_invokeaxis2_58fa5afbf6ace68c26b3c7c3729e751b.step8_circum0(ra_action_invokeaxis2_58fa5afbf6ace68c26b3c7c3729e751b.java:1613)
               at com.pegarules.generated.activity.ra_action_invokeaxis2_58fa5afbf6ace68c26b3c7c3729e751b.perform(ra_action_invokeaxis2_58fa5afbf6ace68c26b3c7c3729e751b.java:189)
               at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3502)
               at com.pegarules.generated.activity.ra_action_invoke_49ef6851fc96b62f661e5c774d4e4302.step8_circum0(ra_action_invoke_49ef6851fc96b62f661e5c774d4e4302.java:1057)
               at com.pegarules.generated.activity.ra_action_invoke_49ef6851fc96b62f661e5c774d4e4302.perform(ra_action_invoke_49ef6851fc96b62f661e5c774d4e4302.java:190)
               at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3502)
               at com.pegarules.generated.activity.ra_action_invokeservice3_49f075f748d49e9feb97b1b11495f8eb.step4_circum0(ra_action_invokeservice3_49f075f748d49e9feb97b1b11495f8eb.java:643)
               at com.pegarules.generated.activity.ra_action_invokeservice3_49f075f748d49e9feb97b1b11495f8eb.perform(ra_action_invokeservice3_49f075f748d49e9feb97b1b11495f8eb.java:134)
               at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3502)
               at com.pegarules.generated.activity.ra_action_predisplaygroupcvs_e9ae7367ce7fdf05a5eafb68ca7e99e3.step5_4_circum0(ra_action_predisplaygroupcvs_e9ae7367ce7fdf05a5eafb68ca7e99e3.java:1060)
               at com.pegarules.generated.activity.ra_action_predisplaygroupcvs_e9ae7367ce7fdf05a5eafb68ca7e99e3.step5_0_circum0(ra_action_predisplaygroupcvs_e9ae7367ce7fdf05a5eafb68ca7e99e3.java:808)
               at com.pegarules.generated.activity.ra_action_predisplaygroupcvs_e9ae7367ce7fdf05a5eafb68ca7e99e3.perform(ra_action_predisplaygroupcvs_e9ae7367ce7fdf05a5eafb68ca7e99e3.java:156)
               at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3502)
Caused by:
com.pega.apache.axiom.soap.SOAPProcessingException: SOAP Envelope can not have children other than SOAP Header and Body
               at com.pega.apache.axiom.soap.impl.dom.SOAPEnvelopeImpl.checkChild(SOAPEnvelopeImpl.java:110)
               at com.pega.apache.axiom.soap.impl.dom.SOAPEnvelopeImpl.insertBefore(SOAPEnvelopeImpl.java:164)
               at com.pega.apache.ws.security.util.WSSecurityUtil.prependChildElement(WSSecurityUtil.java:590)
               at com.pega.apache.ws.security.util.WSSecurityUtil.findWsseSecurityHeaderBlock(WSSecurityUtil.java:641)
               at com.pega.apache.ws.security.message.WSSecHeader.insertSecurityHeader(WSSecHeader.java:134)
               at com.pega.apache.ws.security.handler.WSHandler.doSenderAction(WSHandler.java:99)
               at com.pega.apache.rampart.handler.WSDoAllSender.processBasic(WSDoAllSender.java:201)
               at com.pega.apache.rampart.handler.WSDoAllSender.processMessage(WSDoAllSender.java:64)


Steps to Reproduce



1. Create SOAP Connector.
2. Enable WS-Security.
3. Invoke SOAP Connector.

Root Cause



This error occurs due to enabled the Web Services Security (WS-Security) on a SOAP connector, without also enabling Web Services Addressing (WS-Addressing). Without WS-Addressing enabled, the security headers are incorrectly missing from the Connect SOAP request.

Resolution



Perform the following local-change:

Enable ws addressing check box on the Advanced tab of the Connect SOAP rule resolves the issue.
 
 

Published November 26, 2016 - Updated October 8, 2020

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.