You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by de...@apache.org on 2007/05/30 11:36:16 UTC
svn commit: r542784 - in /webservices/axis2/trunk/java/modules:
integration/test/org/apache/axis2/engine/
kernel/src/org/apache/axis2/client/ kernel/src/org/apache/axis2/receivers/
kernel/src/org/apache/axis2/transport/http/
Author: deepal
Date: Wed May 30 02:36:13 2007
New Revision: 542784
URL: http://svn.apache.org/viewvc?view=rev&rev=542784
Log: (empty)
Modified:
webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLMultipleSyncTest.java
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/client/OperationClient.java
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/client/Options.java
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/client/ServiceClient.java
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/receivers/AbstractInOutAsyncMessageReceiver.java
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/AbstractHTTPSender.java
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPConstants.java
Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLMultipleSyncTest.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLMultipleSyncTest.java?view=diff&rev=542784&r1=542783&r2=542784
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLMultipleSyncTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLMultipleSyncTest.java Wed May 30 02:36:13 2007
@@ -79,6 +79,7 @@
OMElement payload = TestingUtils.createDummyOMElement();
Options options = new Options();
options.setTo(targetEPR);
+ options.setCallTransportCleanup(true);
options.setTransportInProtocol(Constants.TRANSPORT_HTTP);
ConfigurationContext configContext =
ConfigurationContextFactory.createConfigurationContextFromFileSystem(null, null);
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/client/OperationClient.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/client/OperationClient.java?view=diff&rev=542784&r1=542783&r2=542784
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/client/OperationClient.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/client/OperationClient.java Wed May 30 02:36:13 2007
@@ -138,9 +138,7 @@
* client.
*/
public final void execute(boolean block) throws AxisFault {
- if (sc.isCachingOperationContext()) {
- sc.setLastOperationContext(oc);
- }
+ sc.setLastOperationContext(oc);
executeImpl(block);
}
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/client/Options.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/client/Options.java?view=diff&rev=542784&r1=542783&r2=542784
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/client/Options.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/client/Options.java Wed May 30 02:36:13 2007
@@ -187,6 +187,9 @@
*/
private transient MetaDataEntry metaListener = null;
+ //This property can be used to specify to call the auto transport clean up
+ private transient boolean callTransportCleanup ;
+
//----------------------------------------------------------------
// end MetaData section
//----------------------------------------------------------------
@@ -1645,5 +1648,14 @@
log.warn(getLogCorrelationIDString() + ":" + methodname + "(): ****WARNING**** " +
myClassName + ".activate(configurationContext) needs to be invoked.");
}
+ }
+
+
+ public boolean isCallTransportCleanup() {
+ return callTransportCleanup;
+ }
+
+ public void setCallTransportCleanup(boolean callTransportCleanup) {
+ this.callTransportCleanup = callTransportCleanup;
}
}
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/client/ServiceClient.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/client/ServiceClient.java?view=diff&rev=542784&r1=542783&r2=542784
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/client/ServiceClient.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/client/ServiceClient.java Wed May 30 02:36:13 2007
@@ -510,7 +510,13 @@
operationClient.execute(true);
MessageContext response = operationClient
.getMessageContext(WSDLConstants.MESSAGE_LABEL_IN_VALUE);
- return response.getEnvelope().getBody().getFirstElement();
+ if(options.isCallTransportCleanup()){
+ response.getEnvelope().build();
+ cleanupTransport();
+ return response.getEnvelope().getBody().getFirstElement();
+ } else {
+ return response.getEnvelope().getBody().getFirstElement();
+ }
}
/**
@@ -681,7 +687,7 @@
/**
* Sets whether or not to cache the last OperationContext
- *
+ * @deprecated
* @param cachingOpContext true if we should hold onto the last active OperationContext
*/
public void setCachingOperationContext(boolean cachingOpContext) {
@@ -724,6 +730,12 @@
} else {
configContext.terminate();
}
+ }
+
+ public void cleanupTransport() throws AxisFault{
+ MessageContext outMessageContext =
+ getLastOperationContext().getMessageContext(WSDLConstants.MESSAGE_LABEL_OUT_VALUE);
+ outMessageContext.getTransportOut().getSender().cleanup(outMessageContext);
}
/**
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/receivers/AbstractInOutAsyncMessageReceiver.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/receivers/AbstractInOutAsyncMessageReceiver.java?view=diff&rev=542784&r1=542783&r2=542784
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/receivers/AbstractInOutAsyncMessageReceiver.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/receivers/AbstractInOutAsyncMessageReceiver.java Wed May 30 02:36:13 2007
@@ -40,6 +40,7 @@
new AxisEngine(messageCtx.getOperationContext().getServiceContext()
.getConfigurationContext());
engine.send(result);
+ result.getTransportOut().getSender().cleanup(result);
}
public void handleFault(AxisFault fault) throws AxisFault {
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/AbstractHTTPSender.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/AbstractHTTPSender.java?view=diff&rev=542784&r1=542783&r2=542784
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/AbstractHTTPSender.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/AbstractHTTPSender.java Wed May 30 02:36:13 2007
@@ -31,18 +31,7 @@
import org.apache.axis2.util.JavaUtils;
import org.apache.axis2.util.Utils;
import org.apache.axis2.wsdl.WSDLConstants;
-import org.apache.commons.httpclient.Credentials;
-import org.apache.commons.httpclient.Header;
-import org.apache.commons.httpclient.HeaderElement;
-import org.apache.commons.httpclient.HostConfiguration;
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.HttpMethod;
-import org.apache.commons.httpclient.HttpMethodBase;
-import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager;
-import org.apache.commons.httpclient.NTCredentials;
-import org.apache.commons.httpclient.NameValuePair;
-import org.apache.commons.httpclient.UsernamePasswordCredentials;
-import org.apache.commons.httpclient.HttpVersion;
+import org.apache.commons.httpclient.*;
import org.apache.commons.httpclient.auth.AuthPolicy;
import org.apache.commons.httpclient.auth.AuthScope;
import org.apache.commons.httpclient.protocol.Protocol;
@@ -615,7 +604,22 @@
.setProperty(HTTPConstants.CACHED_HTTP_CLIENT, httpClient);
}
} else {
- httpClient = new HttpClient();
+ HttpConnectionManager connManager =
+ (HttpConnectionManager) msgContext.getProperty(
+ HTTPConstants.MUTTITHREAD_HTTP_CONNECTION_MANAGER);
+ if(connManager==null){
+ connManager =
+ new SimpleHttpConnectionManager();
+ msgContext.getConfigurationContext().
+ setProperty(
+ HTTPConstants.MUTTITHREAD_HTTP_CONNECTION_MANAGER,
+ connManager);
+ }
+ if(msgContext.getOptions().isUseSeparateListener()){
+ httpClient = new HttpClient(connManager);
+ } else {
+ httpClient = new HttpClient(connManager);
+ }
}
// Get the timeout values set in the runtime
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPConstants.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPConstants.java?view=diff&rev=542784&r1=542783&r2=542784
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPConstants.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPConstants.java Wed May 30 02:36:13 2007
@@ -434,6 +434,8 @@
*/
public static final String CACHED_HTTP_CLIENT = "CACHED_HTTP_CLIENT";
+ public static final String MUTTITHREAD_HTTP_CONNECTION_MANAGER = "MUTTITHREAD_HTTP_CONNECTION_MANAGER";
+
/**
* Field CACHED_HTTP_CLIENT
*/
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org