エラーが発生します"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");
問題の解決にご協力いただけますか?
このエラーは、コンテンツタイプと受信メッセージのSOAPバージョン(SOAPエンベロープ)の名前空間URIによって決定される)]の間に不一致がある場合に発生します。 。たとえば、Axis2がコンテンツタイプtext/xml
のSOAP 1.2メッセージを受信した場合、そのエラーがトリガーされます。
Joe-このエラーが発生した場合は、本当に古いサービスにアクセスしようとしていて、バージョン2.0のAxisを使用している可能性があると想定しています。 AxisまたはCXFを使用してクライアントを作成してサービスを呼び出すことはできません。私はこれを理解しようと何日も費やしてきました。最終的に、SAAJ APIを使用してリクエストWSDLを作成し、サービスに投稿することになりました。
それは非常に簡単で、RPC /リテラル/ドキュメントスタイルなどを理解しようとするのを防ぎます。
この投稿を参照してください- 投稿