2

Im getting this error:

(a:6016) The message with Action 'xxx' 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).

And I noticed that the binding used by my provider's WSDL is:

BasicHttpBinding_IxFlow

I guess I need to specify that in my Savon Controller. How can I do that?

Thx.

content01
  • 3,115
  • 6
  • 41
  • 61

1 Answers1

0

Since the error message is not really helpful (received this one for various errors) here are some suggestions:

  • try calling the service (or just generate the xml) from another client and record the XML
  • compare with Savonrb XML (it prints it to the console, not pretty formatted but good enough)
  • send the XML you captured from another client trough savon. Does this work? (you can specify custom XML with the block version of client#request method)
  • Look at (this was the problem with my service):
    • Order of parameters
    • Namespace of parameters
    • SOAPAction header (you can also specify it in the block version)
Pascal
  • 8,464
  • 1
  • 20
  • 31