web-dev-qa-db-ja.com

トランスポートレベル情報がSOAPメッセージ名前空間URIと一致しません

エラーが発生します"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");

問題の解決にご協力いただけますか?

12
Srini

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

15
Andreas Veithen

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

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

この投稿を参照してください- 投稿

0
Dinesh Arora