我正在尝试构建一个与第三方SOAP服务交互的客户机。此web服务需要WSE安全性。
我从我试图与之交互的服务的WSDL中生成了一个古老的.asmx web服务。WSDL中没有关于WSE安全性的信息。
没有WSE安全,我可以很好地连接。但是,我将添加到了我的.asmx web服务中。
我向我的客户端添加了以下代码以添加WSE用户名和密码
SoapContext requestContext = host.RequestSoapContext;
UsernameToken userToken = new UsernameToken("username", "password", PasswordOption.SendPlainText);
requestContext.Security.Tokens.Add(userToken);然而,现在当我调用ProcessMessage方法时,我得到了以下异常,但它并没有告诉我太多信息:
System.Web.Services.Protocols.SoapHeaderException:服务器不可用,请稍后尝试 在System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage消息,WebResponse响应,流responseStream,布尔asyncCall) 在System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName,Object[]参数) Reynolds.Core.STARProxy.STARWebService.ProcessMessage(Payload&有效载荷)在C:\Projects\Reynolds.Core\Reynolds.Core\Web References\STARProxy\Reference.cs:line 105中 在Reynolds.Core.reynolds.SendGenericXMLRequest(XmlElement[] inputElements,C:\Projects\Reynolds.Core\Reynolds.Core\Reynolds.cs:line 191中的String url,Guid[] guid) 在Reynolds.Core.reynolds.SendGenericSingleXMLRequest(XmlElement inputXML,C:\Projects\Reynolds.Core\Reynolds.Core\Reynolds.cs:line 125中的字符串url,guid) 在Reynolds.Core.reynolds.SendGenericSingleXMLRequest(XmlElement inputXML,C:\Projects\Reynolds.Core\Reynolds.Core\Reynolds.cs:line 120中的字符串url) 在Reynolds.Core.reynolds.SendGenericSingleXMLRequest(XmlElement inputXML)在C:\Projects\Reynolds.Core\Reynolds.Core\Reynolds.cs:line 114号 在Reynolds.Testing.GUI.Form1.btnProcessMessage_Click(Object发件人,EventArgs e),在C:\Projects\Reynolds.Testing\Reynolds.Testing.GUI\Form1.cs:line 33中
这个例外并没有给我带来太多的帮助。我试过做各种各样的谷歌搜索,但没能得到任何东西。
这是我第一次使用WSE,因此任何帮助都将不胜感激。
发布于 2013-02-08 22:02:22
异常状态为Server unavailable, please try later。这意味着要么您有错误的URL为第三方web服务或第三方服务器已关闭。
https://stackoverflow.com/questions/14782000
复制相似问题