Hi All, I'm using the library Axis 2 version 1.7.3 with HttpClient 4.4.1, and after 200 request the library throw a TimeoutException from connection pool.
>From stacktrace I found the exeption is throw by the class PoolingClientConnectionManager, as reported below Caused by: org.apache.axis2.AxisFault: Timeout waiting for connection from pool at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430) ~[axis2-kernel-1.7.3.jar:1.7.3] at org.apache.axis2.transport.http.impl.httpclient4. HTTPSenderImpl.sendViaPost(HTTPSenderImpl.java:242) ~[axis2-transport-http-1.7.3.jar:1.7.3] at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:121) ~[axis2-transport-http-1.7.3.jar:1.7.3] at org.apache.axis2.transport.http.CommonsHTTPTransportSender. writeMessageWithCommons(CommonsHTTPTransportSender.java:403) ~[axis2-transport-http-1.7.3.jar:1.7.3] at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke( CommonsHTTPTransportSender.java:234) ~[axis2-transport-http-1.7.3.jar:1.7.3] at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:431) ~[axis2-kernel-1.7.3.jar:1.7.3] at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:399) ~[axis2-kernel-1.7.3.jar:1.7.3] at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:225) ~[axis2-kernel-1.7.3.jar:1.7.3] at org.apache.axis2.client.OperationClient.execute(OperationClient.java:150) ~[axis2-kernel-1.7.3.jar:1.7.3] .... Caused by: org.apache.http.conn.ConnectionPoolTimeoutException: Timeout waiting for connection from pool at org.apache.http.impl.conn.PoolingClientConnectionManager.leaseConnection( PoolingClientConnectionManager.java:226) ~[httpclient-4.4.1.jar:4.4.1] at org.apache.http.impl.conn.PoolingClientConnectionManager$1.getConnection( PoolingClientConnectionManager.java:195) ~[httpclient-4.4.1.jar:4.4.1] at org.apache.http.impl.client.DefaultRequestDirector.execute( DefaultRequestDirector.java:423) ~[httpclient-4.4.1.jar:4.4.1] at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:882) ~[httpclient-4.4.1.jar:4.4.1] at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:71) ~[httpclient-4.4.1.jar:4.4.1] at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55) ~[httpclient-4.4.1.jar:4.4.1] at org.apache.axis2.transport.http.impl.httpclient4. HTTPSenderImpl.executeMethod(HTTPSenderImpl.java:873) ~[axis2-transport-http-1.7.3.jar:1.7.3] at org.apache.axis2.transport.http.impl.httpclient4. HTTPSenderImpl.sendViaPost(HTTPSenderImpl.java:238) ~[axis2-transport-http-1.7.3.jar:1.7.3] ... 15 common frames omitted Search into code of library i found the configuration of connection pool: connManager = new PoolingClientConnectionManager(schemeRegistry); ((PoolingClientConnectionManager)connManager).setMaxTotal(200); ((PoolingClientConnectionManager)connManager).setDefaultMaxPerRoute(200); configContext.setProperty(HTTPConstants.MULTITHREAD_HTTP_CONNECTION_MANAGER, connManager); The connection pool it's configured to have 200 connection for route, I have made some test and my application fail after until 200 web service request. >From log i see this line, to confim my idea: 2016-09-19 16:01:06| DEBUG | Connection leased: [id: 199][route: {s}-http://XXXX:443][total kept alive: 0; route allocated: 200 of 200; total allocated: 200 of 200] 2016-09-19 16:01:09| DEBUG | Connection request: [route: {s}->http://XXXX:443][total kept alive: 0; route allocated: 200 of 200; total allocated: 200 of 200] I think the connection pool use all available connections without release it, after that throwing the exception. I tried to write on Axis2 mail list without luck. Any suggestions/test to solve the my problem ? regs