You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by xu...@apache.org on 2011/05/19 04:56:30 UTC
svn commit: r1124524 - in
/geronimo/bundles/trunk/axis2/src/main/java/org/apache/axis2:
client/OperationClient.java transport/http/AbstractHTTPSender.java
Author: xuhaihong
Date: Thu May 19 02:56:30 2011
New Revision: 1124524
URL: http://svn.apache.org/viewvc?rev=1124524&view=rev
Log:
AXIS2-5039 SOAPAction Override, try the updated patch from Geronimo side
Modified:
geronimo/bundles/trunk/axis2/src/main/java/org/apache/axis2/client/OperationClient.java
geronimo/bundles/trunk/axis2/src/main/java/org/apache/axis2/transport/http/AbstractHTTPSender.java
Modified: geronimo/bundles/trunk/axis2/src/main/java/org/apache/axis2/client/OperationClient.java
URL: http://svn.apache.org/viewvc/geronimo/bundles/trunk/axis2/src/main/java/org/apache/axis2/client/OperationClient.java?rev=1124524&r1=1124523&r2=1124524&view=diff
==============================================================================
--- geronimo/bundles/trunk/axis2/src/main/java/org/apache/axis2/client/OperationClient.java (original)
+++ geronimo/bundles/trunk/axis2/src/main/java/org/apache/axis2/client/OperationClient.java Thu May 19 02:56:30 2011
@@ -281,8 +281,7 @@ public abstract class OperationClient {
protected void prepareMessageContext(ConfigurationContext configurationContext,
MessageContext mc)
throws AxisFault {
- // set options on the message context
- if (options.getAction() != null || options.getAction().length() > 0) {
+ if (options.getAction() != null && options.getAction().length() > 0) {
mc.setSoapAction(options.getAction());
}
Modified: geronimo/bundles/trunk/axis2/src/main/java/org/apache/axis2/transport/http/AbstractHTTPSender.java
URL: http://svn.apache.org/viewvc/geronimo/bundles/trunk/axis2/src/main/java/org/apache/axis2/transport/http/AbstractHTTPSender.java?rev=1124524&r1=1124523&r2=1124524&view=diff
==============================================================================
--- geronimo/bundles/trunk/axis2/src/main/java/org/apache/axis2/transport/http/AbstractHTTPSender.java (original)
+++ geronimo/bundles/trunk/axis2/src/main/java/org/apache/axis2/transport/http/AbstractHTTPSender.java Thu May 19 02:56:30 2011
@@ -32,6 +32,7 @@ import org.apache.axis2.i18n.Messages;
import org.apache.axis2.transport.MessageFormatter;
import org.apache.axis2.transport.TransportUtils;
import org.apache.axis2.transport.http.util.HTTPProxyConfigurationUtil;
+import org.apache.axis2.util.JavaUtils;
import org.apache.axis2.wsdl.WSDLConstants;
import org.apache.commons.httpclient.Credentials;
import org.apache.commons.httpclient.Header;
@@ -50,6 +51,8 @@ import org.apache.commons.httpclient.Use
import org.apache.commons.httpclient.auth.AuthPolicy;
import org.apache.commons.httpclient.auth.AuthScope;
import org.apache.commons.httpclient.params.HttpMethodParams;
+import org.apache.commons.httpclient.params.HttpConnectionManagerParams;
+import org.apache.commons.httpclient.params.HttpClientParams;
import org.apache.commons.httpclient.protocol.Protocol;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -621,6 +624,7 @@ public abstract class AbstractHTTPSender
public void addCustomHeaders(HttpMethod method, MessageContext msgContext) {
boolean isCustomUserAgentSet = false;
+ boolean isSOAPActionSet = method.getRequestHeader(HTTPConstants.HEADER_SOAP_ACTION) != null;
// set the custom headers, if available
Object httpHeadersObj = msgContext.getProperty(HTTPConstants.HTTP_HEADERS);
if (httpHeadersObj != null) {
@@ -633,6 +637,8 @@ public abstract class AbstractHTTPSender
isCustomUserAgentSet = true;
} else if (HTTPConstants.HEADER_CONTENT_LENGTH.equals(header.getName()) && chunked) {
continue;
+ } else if (HTTPConstants.HEADER_SOAP_ACTION.equals(header.getName()) && isSOAPActionSet) {
+ continue;
}
method.addRequestHeader(header);
}
@@ -648,6 +654,8 @@ public abstract class AbstractHTTPSender
isCustomUserAgentSet = true;
} else if (HTTPConstants.HEADER_CONTENT_LENGTH.equals(key) && chunked) {
continue;
+ } else if (HTTPConstants.HEADER_SOAP_ACTION.equals(key) && isSOAPActionSet) {
+ continue;
}
method.addRequestHeader(key, value);
}