0

我已经为这个问题苦苦挣扎了一个多星期。我有一个与 WSDualHttpBinding 一起使用的第三方 WCF Web 服务。我有他们的 wsdl 文件,我正在尝试交流。我用了:

  1. 生成 Java 代码的 Metro。我试过了,但没有用。有一个问题,例如{tempuri.org}//WebServiceName 不是正确的名称。网络服务列表是:...
  2. SoapUI - 我尝试交流,我被 202 接受了。我使用了wireshark,似乎webservice无法正确处理soap xml。我不确定soapUI 是否支持WSDualHttpBinding。

我非常感谢任何提示、文章或解决方案。

4

1 回答 1

0

我不确定双重绑定是否可以与 WCF 以外的客户端互操作。我曾经读过用于 Java 的 Metro (WSIT) 堆栈支持它。但最安全的是使用 WCF 客户端。

原因是双重绑定假定客户端应该在回调端点中从服务器获取消息。这不是那么标准,就在 WSDL 文件中正确定义而言也是如此。您可以通过在客户端设置专用服务器等待 WCF 响应来摆脱它。但是接线会很费时间。

如果您拥有服务器,您可能希望更明确地说明客户端应该有一个服务器端点来获取回调,或者您可以使用一些 WCF 路由器作为中间体。

更新:查看此链接以了解为什么 WSDualHttpBinding 不能与 Java 互操作

于 2013-08-03T11:16:51.907 回答