0
votes

I have a WCF service. A third party client sends SOAP 1.1 message to the service. I found out that the service can use basicHttpBinding to accept SOAP 1.1 messages so I configured my service to use basicHttpBinding. But the client gets an error message as below.

I am sure there is no contract mismatch so I am researching on whether there is binding/security mismatch between the client and the server. Also, I have tested my service from a test application by using basicHttpBinding and it works fine. I am not sure why it is giving the error when sending a SOAP 1.1 message from a third party client. I appreciate if anyone could point out what else I should be checking or any questions that I should check with the third party vendor? Thanks in advance.

Notes: The service does not use authentication. The third party is not .NET based client. I have only one OperationContract that can be consumed by the client. It is not decorated with any special attrubutes except [OperationContract]. Please let me know if you need any other information.

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)
1
Can you edit your question to include these details (whether authentication is used, if the third party is .NET based or not, your contracts being passed)?Channs
I added the details at the end of the question. Please let me know if I need to provide any other details. Thank you.Jyina
I would suggest using a network inspection tool (like Fiddler) to compare the requests being sent by your test application and the 3rd party client. Or you could examine the requests manually too. I have a strong suspicion (since I have seen it earlier) that the 3rd part client isn't sending the SOAP request as expected by WCF. Hope this helps.Channs
Thank you. I will compare the requests and see what is different.Jyina

1 Answers

1
votes

I could not understand if you write the service or the client, but the problem is definetely either that the client does not send a SOAPAction HTTP Header, OR that the service uses soap11 but with some wsaddressing. In this case you should use custom binding and define the right addressing on the textBindingElmenet.