12

エラーが発生しています"Transport level information does not match with SOAP Message namespace URI"。問題を解決するための詳細を提供するよう依頼してください。

クライアント側で以下を設定しました。

HttpTransportProperties.ProxyProperties proxyProperties = new HttpTransportProperties.ProxyProperties();
proxyProperties.setProxyName(proxyAddress);
proxyProperties.setProxyPort(proxyPort);
stub._getServiceClient().getOptions().setProperty(HTTPConstants.CHUNKED,Boolean.FALSE);
stub._getServiceClient().getOptions().setProperty(HTTPConstants.PROXY, proxyProperties);
stub._getServiceClient().getOptions().setProperty(HTTPConstants.HEADER_CONTENT_TYPE,"application/soap+xml");
stub._getServiceClient().getOptions().setProperty("type","application/soap+xml");
stub._getServiceClient().getOptions().setProperty(HTTPConstants.HEADER_SOAP_ACTION, Action_URL);
stub._getServiceClient().getOptions().setProperty ( HTTPConstants.HTTP_PROTOCOL_VERSION, HTTPConstants.HEADER_PROTOCOL_11 ) ;
stub._getServiceClient().getOptions().setProperty ( "Transfer-Encoding", "chunked" ) ;
stub._getServiceClient().getOptions().setProperty(HTTPConstants.REUSE_HTTP_CLIENT, "true");

問題を解決するのを手伝ってもらえますか?

4

2 に答える 2

20

このエラーは、受信したメッセージのコンテンツ タイプと SOAP バージョン (SOAP エンベロープの名前空間 URI によって決定される) が一致しない場合に発生します。たとえば、Axis2 が content type の SOAP 1.2 メッセージを受信するとtext/xml、そのエラーがトリガーされます。

于 2013-06-02T14:00:36.470 に答える
0

Joe - このエラーが発生する場合は、非常に古いサービスにアクセスしようとしており、バージョン 2.0 の Axis を使用している可能性があると想定しています。Axis または CXF を使用してクライアントを作成してサービスを呼び出すことはできません。私はこれを理解しようと何日も費やしました。最終的に、SAAJ API を使用してリクエスト WSDL を作成し、それをサービスにポストすることになりました。

これは非常に簡単で、RPC/リテラル​​/ドキュメント スタイルなどを理解しようとする手間を省きます。

この投稿を見る -投稿

于 2014-12-11T03:46:07.867 に答える