cancel
Showing results for 
Search instead for 
Did you mean: 

Error While connecting to target application using soap receiver adapter in CPI

manemahesh
Participant
0 Kudos
988

Hi All,

I am getting below error while trying to do connection test to target web application from CPI. When i test with same payload using soapui i am able to connect target url successfully. I have also attached error screenshot. It looks to me that SOAP Action is getting send as '' blank but not sure how to set soap action in cpi.

Error that i am getting:-

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body><s:Fault><faultcode xmlns:a="http://schemas.microsoft.com/ws/2005/05/addressing/none">a:ActionNotSupported</faultcode><faultstring xml:lang="en-US">The message with Action '' cannot be processed at the receiver, due to a ContractFilter mismatch at the EndpointDispatcher. This may be because of either a contract mismatch (mismatched Actions between sender and receiver) or a binding/security mismatch between the sender and the receiver. Check that sender and receiver have the same contract and the same binding (including security requirements, e.g. Message, Transport, None).</faultstring></s:Fault></s:Body></s:Envelope>

Accepted Solutions (0)

Answers (2)

Answers (2)

manemahesh
Participant
0 Kudos

Hi All,

The above error was due to additonal soap:env and soap:header which i was adding through xslt mapping and payload with additional soap:env and soap:body was not getting accepted on target end i was getting this error. When i removed explicit xslt mapping which i had used in my IFlow and triggered the payload from soap ui with soap:env;soap:body then payload got successfully accepted on target side. So basically soap:env & soap:body was going to target twice(one from my original payload from postman & other from my IFlow xslt to add soap:env & soap:body)

PavanKumar
Active Contributor
0 Kudos

Hi Mahesh,

I think you can set the soap action in Operation Name parameter, did you tried that?

https://help.sap.com/docs/CLOUD_INTEGRATION/368c481cd6954bdfa5d0435479fd4eaf/57f7b34b9b86438d9cb760c...

Regards

Pavan Kumar D

manemahesh
Participant
0 Kudos

Hi Pavan,

Yes i tried to put soap action in operation field but it doesn't allow me to only put operation alone rather this operation field gets automatically populated along with other fields(service,endpoint)when i import the WSDL shared by client as shown in screenshot attached.

And when i import WSDL in URL to WSDL field then automatically these(service,endpoint,operation) comes from taking reference from WSDL but after that also i am not able to deploy iflow and getting error as none of the policy alternatives can be satisfied as shown in another screenshot attached.

Pls help.

Also just now i tried to put SOAPAction in content Modifier without putting any values for(URL to WSDL, service, endpoint, operation) fields in SOAP receiver channel and now i am getting error as below. pls help.

Error Detailsorg.apache.cxf.binding.soap.SoapFault: The server was unable to process the request due to an internal error. For more information about the error, either turn on IncludeExceptionDetailInFaults (either from ServiceBehaviorAttribute or from the configuration behavior) on the server in order to send the exception information back to the client, or turn on tracing as per the Microsoft .NET Framework SDK documentation and inspect the server trace logs.

HTTPRequestHeader in IFlow as below after adding SOAPAction in content modifier.

SOAPAction: http://schemas.agiboo.com/FIM/FinancialInterface/Contracts/1.0/ITradeSystem/NotifyIncomingInvoice