传输级别信息与SOAP Message名称空间URI不匹配

时间:2013-05-31 15:46:08

标签: java axis2

我收到错误"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");

你能帮忙解决这个问题吗?

2 个答案:

答案 0 :(得分:15)

如果内容类型与接收消息的SOAP版本(由SOAP信封的名称空间URI确定)之间存在不匹配,则会发生该错误。例如。如果Axis2收到内容类型为text/xml的SOAP 1.2消息,则会触发该错误。

答案 1 :(得分:0)

Joe - 如果您收到此错误,那么我假设您正在尝试访问一个非常旧的服务,并且您可能正在使用2.0版的Axis。您将无法使用Axis或CXF创建客户端来调用该服务。我花了几天时间试图解决这个问题。最后,我最终使用SAAJ API创建请求WSDL并将其发布到服务。

这很容易,让您远离尝试找出RPC /文字/文档样式等。

请参阅此帖子 - Post