如何使用Savon(RoR)指定BasicHttpBinding

时间:2011-06-29 15:46:44

标签: ruby-on-rails web-services basichttpbinding savon

我收到此错误:

  

(a:6016)带有'xxx'动作的消息   不能在接收器处理,   由于ContractFilter不匹配   EndpointDispatcher。这可能是   因为合同不匹配   (发件人和发件人之间不匹配的行为)   接收者)或绑定/安全   发件人和发件人之间不匹配   接收器。检查发件人和   接收者有相同的合同和   相同的绑定(包括安全性   要求,例如消息,运输,   无)。

我注意到我的提供者的WSDL使用的绑定是:

BasicHttpBinding_IxFlow

我想我需要在我的Savon Controller中指定它。我怎么能这样做?

THX。

1 个答案:

答案 0 :(得分:0)

由于错误消息并没有真正帮助(收到这个错误消息),这里有一些建议:

  • 尝试从另一个客户端调用该服务(或仅生成xml)并记录XML
  • 与Savonrb XML比较(它将它打印到控制台,格式不是很好但足够好)
  • 通过savon发送您从另一个客户端捕获的XML。这有用吗? (您可以使用客户端#request方法的块版本指定自定义XML)
  • 看看(这是我服务的问题):
    • 参数顺序
    • 参数命名空间
    • SOAPAction标头(您也可以在块版本中指定)