2013-07-11 4 views
2

Как это исправить?WCF - ошибка несоответствия действий SOAP при тестировании с помощью SoapUI

> <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/fault</a:Action> 
> </s:Header> <s:Body> 
>  <s:Fault> 
>   <s:Code> 
>    <s:Value>s:Sender</s:Value> 
>    <s:Subcode> 
>    <s:Value>a:ActionMismatch</s:Value> 
>    </s:Subcode> 
>   </s:Code> 
>   <s:Reason> 
>    <s:Text xml:lang="en-US">The SOAP action specified on the message, '', does not match the HTTP SOAP Action, 
> 'XX.XXX.WebServices.XXXXService/XXXXService/AuthenticateUser'.</s:Text> 
>   </s:Reason> 
>   <s:Detail> 
>    <a:ProblemHeaderQName>a:Action</a:ProblemHeaderQName> 
>   </s:Detail> 
>  </s:Fault> </s:Body> </s:Envelope> 

ответ

2

Настройка SoapUI отправить этот заголовок HTTP:

SOAPAction=XX.XXX.WebServices.XXXXService/XXXXService/AuthenticateUser 
0

Видимо ваши использует мыло 1.2 (см 'http://www.w3.org/2003/05/soap-envelope'), и используя 'SOAPAction' не будет работать для мыла 1.2 (только для мыла 1.1).

Для мыла 1.2 действие «мыло» можно найти в заголовке «Content-Type» в конце, и он будет говорить что-то вроде «Content-Type: application/soap + xml; charset = UTF-8; action = ... '.

Я столкнулся с той же проблемой и не нашел ответа здесь. Единственное, что сработало для меня, - это использовать WS-Addressing. Вы нашли другое решение?

Смежные вопросы