17

在 SoapUI 工具中处理请求 XML 时,我在响应 XML 中收到以下消息。对于与应用程序关联的所有类型的服务,我们都收到了相同的消息。

<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing">
   <s:Header>
      <a:Action s:mustUnderstand="1">http://www.w3.org/2005/08/addressing/soap/fault</a:Action>
   </s:Header>
   <s:Body>
      <s:Fault>
         <s:Code>
            <s:Value>s:Sender</s:Value>
            <s:Subcode>
               <s:Value>a:DestinationUnreachable</s:Value>
            </s:Subcode>
         </s:Code>
         <s:Reason>
            <s:Text xml:lang="en-US">The message with To '' cannot be processed at the receiver, due to an AddressFilter mismatch at the EndpointDispatcher.  Check that the sender and receiver's EndpointAddresses agree.</s:Text>
         </s:Reason>
      </s:Fault>
   </s:Body>
</s:Envelope>

任何人都知道我们应该做些什么来解决这个问题?提前致谢。

4

2 回答 2

25

问题是因为请求消息缺少 To 标头。在消息编辑器上,就在请求消息窗口下方,单击按钮 WS-A。然后选中复选框“添加默认 wsa:To

现在运行您的请求,服务将运行良好。

希望有帮助

于 2013-10-15T18:23:16.703 回答
1

如果您发布请求 XML(以及 WSDL 的相关部分)会有所帮助,但从外观上看,这是一个解决问题。检查您是否在客户端和服务器上使用相同的 SOAP 版本(1.1 与 1.2),WS-Addressing 的使用是否一致等。另外,尝试生成 WCF 客户端(使用 svcutil / 添加服务参考),使用该客户端发送消息,捕获它(例如使用 Fiddler),然后 - 假设它有效 - 将其与 SoapUI 生成的消息进行比较。

于 2012-12-22T07:31:24.417 回答