Index: DefaultRequestDirector.java =================================================================== --- DefaultRequestDirector.java (revision 1177034) +++ DefaultRequestDirector.java (working copy) @@ -431,6 +431,11 @@ RequestWrapper wrapper = roureq.getRequest(); HttpRoute route = roureq.getRoute(); response = null; + + HttpRequest contextRequest = (HttpRequest) context.getAttribute(ExecutionContext.HTTP_REQUEST); + if(contextRequest == null){ + context.setAttribute(ExecutionContext.HTTP_REQUEST,wrapper); + } // See if we have a user token bound to the execution context Object userToken = context.getAttribute(ClientContext.USER_TOKEN); @@ -463,6 +468,8 @@ } } } + + if (orig instanceof AbortableHttpRequest) { ((AbortableHttpRequest) orig).setReleaseTrigger(managedConn); @@ -698,6 +705,9 @@ managedConn.close(); } catch (IOException ignore) { } + + + if (retryHandler.retryRequest(ex, wrapper.getExecCount(), context)) { if (this.log.isInfoEnabled()) { this.log.info("I/O exception ("+ ex.getClass().getName() +