0

サード パーティの SOAP Web サービスと対話するクライアントを構築しようとしています。この Web サービスには WSE セキュリティが必要です。

対話しようとしているサービスの WSDL から古い学校の .asmx Web サービスを生成しました。WSDL には、WSE セキュリティに関する情報が含まれていません。

WSE Security がなくても問題なく接続できます。ただし、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 (メソッド名の文字列、オブジェクト [] パラメーター) で

C:\Projects\Reynolds.Core\Reynolds.Core\Web References\STARProxy\Reference.cs:line 105 の Reynolds.Core.STARProxy.STARWebService.ProcessMessage(Payload& ペイロード) で

C:\Projects\Reynolds.Core\Reynolds.Core\Reynolds.cs:line 191 の Reynolds.Core.reynolds.SendGenericXMLRequest(XmlElement[] inputElements, String url, Guid[] guids) で

C:\Projects\Reynolds.Core\Reynolds.Core\Reynolds.cs:line 125 の Reynolds.Core.reynolds.SendGenericSingleXMLRequest (XmlElement inputXML, String url, Guid guid) で

C:\Projects\Reynolds.Core\Reynolds.Core\Reynolds.cs:line 120 の Reynolds.Core.reynolds.SendGenericSingleXMLRequest(XmlElement inputXML, String url) で

C:\Projects\Reynolds.Core\Reynolds.Core\Reynolds.cs:line 114 の Reynolds.Core.reynolds.SendGenericSingleXMLRequest(XmlElement inputXML) で

C:\Projects\Reynolds.Testing\Reynolds.Testing.GUI\Form1.cs:line 33 の Reynolds.Testing.GUI.Form1.btnProcessMessage_Click (オブジェクト送信者、EventArgs e) で

例外は、ここで作業することはあまりありません。さまざまな Google 検索を実行してみましたが、どこにもアクセスできませんでした。

初めて WSE を使用するので、助けていただければ幸いです。

4

1 に答える 1

-1

例外は述べていServer unavailable, please try laterます。これは、サード パーティの Web サービスの URL が間違っているか、サード パーティのサーバーがダウンしていることを意味します。

于 2013-02-08T22:02:22.753 に答える