You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2013/04/02 22:09:08 UTC
svn commit: r1463725 - in /httpcomponents/httpasyncclient/trunk: ./
httpasyncclient-cache/src/main/java/org/apache/http/impl/client/cache/
httpasyncclient/src/main/java/org/apache/http/impl/nio/client/
httpasyncclient/src/test/java/org/apache/http/nio/...
Author: olegk
Date: Tue Apr 2 20:09:08 2013
New Revision: 1463725
URL: http://svn.apache.org/r1463725
Log:
Upgraded HttpClient to version 4.3-alpha1; fixed API incompatibilities
Added:
httpcomponents/httpasyncclient/trunk/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/ParamConfig.java (with props)
Modified:
httpcomponents/httpasyncclient/trunk/httpasyncclient-cache/src/main/java/org/apache/http/impl/client/cache/AsynchronousAsyncValidationRequest.java
httpcomponents/httpasyncclient/trunk/httpasyncclient-cache/src/main/java/org/apache/http/impl/client/cache/AsynchronousAsyncValidator.java
httpcomponents/httpasyncclient/trunk/httpasyncclient-cache/src/main/java/org/apache/http/impl/client/cache/CachingHttpAsyncClient.java
httpcomponents/httpasyncclient/trunk/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/DefaultAsyncRequestDirector.java
httpcomponents/httpasyncclient/trunk/httpasyncclient/src/test/java/org/apache/http/nio/client/integration/TestRedirects.java
httpcomponents/httpasyncclient/trunk/pom.xml
Modified: httpcomponents/httpasyncclient/trunk/httpasyncclient-cache/src/main/java/org/apache/http/impl/client/cache/AsynchronousAsyncValidationRequest.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpasyncclient/trunk/httpasyncclient-cache/src/main/java/org/apache/http/impl/client/cache/AsynchronousAsyncValidationRequest.java?rev=1463725&r1=1463724&r2=1463725&view=diff
==============================================================================
--- httpcomponents/httpasyncclient/trunk/httpasyncclient-cache/src/main/java/org/apache/http/impl/client/cache/AsynchronousAsyncValidationRequest.java (original)
+++ httpcomponents/httpasyncclient/trunk/httpasyncclient-cache/src/main/java/org/apache/http/impl/client/cache/AsynchronousAsyncValidationRequest.java Tue Apr 2 20:09:08 2013
@@ -31,10 +31,10 @@ import java.io.IOException;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.http.HttpHost;
-import org.apache.http.HttpRequest;
import org.apache.http.HttpResponse;
import org.apache.http.ProtocolException;
import org.apache.http.client.cache.HttpCacheEntry;
+import org.apache.http.client.methods.HttpRequestWrapper;
import org.apache.http.concurrent.FutureCallback;
import org.apache.http.protocol.HttpContext;
@@ -46,7 +46,7 @@ class AsynchronousAsyncValidationRequest
private final AsynchronousAsyncValidator parent;
private final CachingHttpAsyncClient cachingAsyncClient;
private final HttpHost target;
- private final HttpRequest request;
+ private final HttpRequestWrapper request;
private final HttpContext context;
private final HttpCacheEntry cacheEntry;
private final String identifier;
@@ -58,7 +58,7 @@ class AsynchronousAsyncValidationRequest
* revalidation.
*/
AsynchronousAsyncValidationRequest(final AsynchronousAsyncValidator parent,
- final CachingHttpAsyncClient cachingClient, final HttpHost target, final HttpRequest request,
+ final CachingHttpAsyncClient cachingClient, final HttpHost target, final HttpRequestWrapper request,
final HttpContext context, final HttpCacheEntry cacheEntry, final String identifier) {
this.parent = parent;
this.cachingAsyncClient = cachingClient;
Modified: httpcomponents/httpasyncclient/trunk/httpasyncclient-cache/src/main/java/org/apache/http/impl/client/cache/AsynchronousAsyncValidator.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpasyncclient/trunk/httpasyncclient-cache/src/main/java/org/apache/http/impl/client/cache/AsynchronousAsyncValidator.java?rev=1463725&r1=1463724&r2=1463725&view=diff
==============================================================================
--- httpcomponents/httpasyncclient/trunk/httpasyncclient-cache/src/main/java/org/apache/http/impl/client/cache/AsynchronousAsyncValidator.java (original)
+++ httpcomponents/httpasyncclient/trunk/httpasyncclient-cache/src/main/java/org/apache/http/impl/client/cache/AsynchronousAsyncValidator.java Tue Apr 2 20:09:08 2013
@@ -38,8 +38,8 @@ import java.util.concurrent.TimeUnit;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.http.HttpHost;
-import org.apache.http.HttpRequest;
import org.apache.http.client.cache.HttpCacheEntry;
+import org.apache.http.client.methods.HttpRequestWrapper;
import org.apache.http.protocol.HttpContext;
/**
@@ -100,7 +100,7 @@ class AsynchronousAsyncValidator {
* @param context
* @param entry
*/
- public synchronized void revalidateCacheEntry(final HttpHost target, final HttpRequest request,
+ public synchronized void revalidateCacheEntry(final HttpHost target, final HttpRequestWrapper request,
final HttpContext context, final HttpCacheEntry entry) {
// getVariantURI will fall back on getURI if no variants exist
final String uri = this.cacheKeyGenerator.getVariantURI(target, request, entry);
Modified: httpcomponents/httpasyncclient/trunk/httpasyncclient-cache/src/main/java/org/apache/http/impl/client/cache/CachingHttpAsyncClient.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpasyncclient/trunk/httpasyncclient-cache/src/main/java/org/apache/http/impl/client/cache/CachingHttpAsyncClient.java?rev=1463725&r1=1463724&r2=1463725&view=diff
==============================================================================
--- httpcomponents/httpasyncclient/trunk/httpasyncclient-cache/src/main/java/org/apache/http/impl/client/cache/CachingHttpAsyncClient.java (original)
+++ httpcomponents/httpasyncclient/trunk/httpasyncclient-cache/src/main/java/org/apache/http/impl/client/cache/CachingHttpAsyncClient.java Tue Apr 2 20:09:08 2013
@@ -54,6 +54,7 @@ import org.apache.http.client.cache.Head
import org.apache.http.client.cache.HttpCacheEntry;
import org.apache.http.client.cache.HttpCacheStorage;
import org.apache.http.client.cache.ResourceFactory;
+import org.apache.http.client.methods.HttpRequestWrapper;
import org.apache.http.client.methods.HttpUriRequest;
import org.apache.http.concurrent.BasicFuture;
import org.apache.http.concurrent.FutureCallback;
@@ -71,6 +72,7 @@ import org.apache.http.params.HttpParams
import org.apache.http.protocol.HttpContext;
import org.apache.http.util.VersionInfo;
+@SuppressWarnings("deprecation")
@ThreadSafe // So long as the responseCache implementation is threadsafe
public class CachingHttpAsyncClient implements HttpAsyncClient {
@@ -121,7 +123,7 @@ public class CachingHttpAsyncClient impl
this.backend = client;
this.responseCache = cache;
this.validityPolicy = new CacheValidityPolicy();
- this.responseCachingPolicy = new ResponseCachingPolicy(this.maxObjectSizeBytes, this.sharedCache);
+ this.responseCachingPolicy = new ResponseCachingPolicy(this.maxObjectSizeBytes, this.sharedCache, false);
this.responseGenerator = new CachedHttpResponseGenerator(this.validityPolicy);
this.cacheableRequestPolicy = new CacheableRequestPolicy();
this.suitabilityChecker = new CachedResponseSuitabilityChecker(this.validityPolicy, config);
@@ -136,7 +138,7 @@ public class CachingHttpAsyncClient impl
public CachingHttpAsyncClient() throws IOReactorException {
this(new DefaultHttpAsyncClient(),
new BasicHttpCache(),
- new CacheConfig());
+ CacheConfig.DEFAULT);
}
public CachingHttpAsyncClient(final CacheConfig config) throws IOReactorException {
@@ -148,7 +150,7 @@ public class CachingHttpAsyncClient impl
public CachingHttpAsyncClient(final HttpAsyncClient client) {
this(client,
new BasicHttpCache(),
- new CacheConfig());
+ CacheConfig.DEFAULT);
}
public CachingHttpAsyncClient(final HttpAsyncClient client, final CacheConfig config) {
@@ -187,7 +189,7 @@ public class CachingHttpAsyncClient impl
final ConditionalRequestBuilder conditionalRequestBuilder,
final ResponseProtocolCompliance responseCompliance,
final RequestProtocolCompliance requestCompliance) {
- final CacheConfig config = new CacheConfig();
+ final CacheConfig config = CacheConfig.DEFAULT;
this.maxObjectSizeBytes = config.getMaxObjectSize();
this.sharedCache = config.isSharedCache();
this.backend = backend;
@@ -280,15 +282,17 @@ public class CachingHttpAsyncClient impl
return this.backend.getConnectionManager();
}
+ @Deprecated
public HttpParams getParams() {
return this.backend.getParams();
}
public Future<HttpResponse> execute(
final HttpHost target,
- final HttpRequest request,
+ final HttpRequest originalRequest,
final HttpContext context,
final FutureCallback<HttpResponse> futureCallback) {
+ final HttpRequestWrapper request = HttpRequestWrapper.wrap(originalRequest);
// default response context
setResponseStatus(context, CacheResponseStatus.CACHE_MISS);
@@ -309,29 +313,28 @@ public class CachingHttpAsyncClient impl
return future;
}
- HttpRequest httRequest = request;
try {
- httRequest = this.requestCompliance.makeRequestCompliant(request);
+ this.requestCompliance.makeRequestCompliant(request);
} catch (final ClientProtocolException e) {
final BasicFuture<HttpResponse> future = new BasicFuture<HttpResponse>(futureCallback);
future.failed(e);
return future;
}
- httRequest.addHeader("Via",via);
+ request.addHeader("Via",via);
- flushEntriesInvalidatedByRequest(target, httRequest);
+ flushEntriesInvalidatedByRequest(target, request);
- if (!this.cacheableRequestPolicy.isServableFromCache(httRequest)) {
- return callBackend(target, httRequest, context, futureCallback);
+ if (!this.cacheableRequestPolicy.isServableFromCache(request)) {
+ return callBackend(target, request, context, futureCallback);
}
- final HttpCacheEntry entry = satisfyFromCache(target, httRequest);
+ final HttpCacheEntry entry = satisfyFromCache(target, request);
if (entry == null) {
- return handleCacheMiss(target, httRequest, context, futureCallback);
+ return handleCacheMiss(target, request, context, futureCallback);
}
try {
- return handleCacheHit(target, httRequest, context, entry, futureCallback);
+ return handleCacheHit(target, request, context, entry, futureCallback);
} catch (final ClientProtocolException e) {
final BasicFuture<HttpResponse> future = new BasicFuture<HttpResponse>(futureCallback);
future.failed(e);
@@ -343,7 +346,7 @@ public class CachingHttpAsyncClient impl
}
}
- private Future<HttpResponse> handleCacheHit(final HttpHost target, final HttpRequest request,
+ private Future<HttpResponse> handleCacheHit(final HttpHost target, final HttpRequestWrapper request,
final HttpContext context, final HttpCacheEntry entry,
final FutureCallback<HttpResponse> futureCallback)
throws ClientProtocolException, IOException {
@@ -369,7 +372,7 @@ public class CachingHttpAsyncClient impl
}
private Future<HttpResponse> revalidateCacheEntry(final HttpHost target,
- final HttpRequest request, final HttpContext context, final HttpCacheEntry entry,
+ final HttpRequestWrapper request, final HttpContext context, final HttpCacheEntry entry,
final Date now, final FutureCallback<HttpResponse> futureCallback) throws ClientProtocolException {
this.log.debug("Revalidating the cache entry");
@@ -409,7 +412,7 @@ public class CachingHttpAsyncClient impl
}
}
- private Future<HttpResponse> handleCacheMiss(final HttpHost target, final HttpRequest request,
+ private Future<HttpResponse> handleCacheMiss(final HttpHost target, final HttpRequestWrapper request,
final HttpContext context, final FutureCallback<HttpResponse> futureCallback) {
recordCacheMiss(target, request);
@@ -631,7 +634,9 @@ public class CachingHttpAsyncClient impl
return true;
}
- Future<HttpResponse> callBackend(final HttpHost target, final HttpRequest request, final HttpContext context, final FutureCallback<HttpResponse> futureCallback) {
+ Future<HttpResponse> callBackend(
+ final HttpHost target, final HttpRequestWrapper request, final HttpContext context,
+ final FutureCallback<HttpResponse> futureCallback) {
final Date requestDate = getCurrentDate();
this.log.debug("Calling the backend");
return this.backend.execute(target, request, context, new FutureCallback<HttpResponse>() {
@@ -681,7 +686,7 @@ public class CachingHttpAsyncClient impl
}
Future<HttpResponse> negotiateResponseFromVariants(final HttpHost target,
- final HttpRequest request, final HttpContext context,
+ final HttpRequestWrapper request, final HttpContext context,
final Map<String, Variant> variants,
final FutureCallback<HttpResponse> futureCallback) {
final HttpRequest conditionalRequest = this.conditionalRequestBuilder.buildConditionalRequestFromVariants(request, variants);
@@ -750,7 +755,6 @@ public class CachingHttpAsyncClient impl
}
});
- return;
}
final HttpCacheEntry matchedEntry = matchingVariant.getEntry();
@@ -787,9 +791,9 @@ public class CachingHttpAsyncClient impl
}
private void retryRequestUnconditionally(final HttpHost target,
- final HttpRequest request, final HttpContext context,
+ final HttpRequestWrapper request, final HttpContext context,
final HttpCacheEntry matchedEntry, final FutureCallback<HttpResponse> futureCallback) {
- final HttpRequest unconditional = this.conditionalRequestBuilder
+ final HttpRequestWrapper unconditional = this.conditionalRequestBuilder
.buildUnconditionalRequest(request, matchedEntry);
callBackend(target, unconditional, context, futureCallback);
}
@@ -825,12 +829,12 @@ public class CachingHttpAsyncClient impl
Future<HttpResponse> revalidateCacheEntry(
final HttpHost target,
- final HttpRequest request,
+ final HttpRequestWrapper request,
final HttpContext context,
final HttpCacheEntry cacheEntry,
final FutureCallback<HttpResponse> futureCallback) throws ProtocolException {
- final HttpRequest conditionalRequest = this.conditionalRequestBuilder.buildConditionalRequest(request, cacheEntry);
+ final HttpRequestWrapper conditionalRequest = this.conditionalRequestBuilder.buildConditionalRequest(request, cacheEntry);
final Date requestDate = getCurrentDate();
return this.backend.execute(target, conditionalRequest, context, new FutureCallback<HttpResponse>() {
@@ -880,11 +884,11 @@ public class CachingHttpAsyncClient impl
private void revalidateCacheEntryCompleted(
final HttpHost target,
- final HttpRequest request,
+ final HttpRequestWrapper request,
final HttpContext context,
final HttpCacheEntry cacheEntry,
final FutureCallback<HttpResponse> futureCallback,
- final HttpRequest conditionalRequest,
+ final HttpRequestWrapper conditionalRequest,
final Date requestDate,
final HttpResponse httpResponse,
final Date responseDate) {
@@ -942,7 +946,7 @@ public class CachingHttpAsyncClient impl
HttpResponse handleBackendResponse(
final HttpHost target,
- final HttpRequest request,
+ final HttpRequestWrapper request,
final Date requestDate,
final Date responseDate,
final HttpResponse backendResponse) throws IOException {
Modified: httpcomponents/httpasyncclient/trunk/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/DefaultAsyncRequestDirector.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpasyncclient/trunk/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/DefaultAsyncRequestDirector.java?rev=1463725&r1=1463724&r2=1463725&view=diff
==============================================================================
--- httpcomponents/httpasyncclient/trunk/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/DefaultAsyncRequestDirector.java (original)
+++ httpcomponents/httpasyncclient/trunk/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/DefaultAsyncRequestDirector.java Tue Apr 2 20:09:08 2013
@@ -54,9 +54,11 @@ import org.apache.http.client.NonRepeata
import org.apache.http.client.RedirectException;
import org.apache.http.client.RedirectStrategy;
import org.apache.http.client.UserTokenHandler;
+import org.apache.http.client.config.RequestConfig;
import org.apache.http.client.methods.AbortableHttpRequest;
import org.apache.http.client.methods.HttpUriRequest;
import org.apache.http.client.params.ClientPNames;
+import org.apache.http.client.params.HttpClientParamConfig;
import org.apache.http.client.params.HttpClientParams;
import org.apache.http.client.protocol.ClientContext;
import org.apache.http.client.utils.URIUtils;
@@ -230,6 +232,8 @@ class DefaultAsyncRequestDirector<T> imp
wrapper.setParams(this.params);
final HttpRoute route = determineRoute(target, wrapper, this.localContext);
this.mainRequest = new RoutedRequest(wrapper, route);
+ RequestConfig config = ParamConfig.getRequestConfig(params);
+ this.localContext.setAttribute(ClientContext.REQUEST_CONFIG, config);
this.requestContentProduced = false;
requestConnection();
} catch (final Exception ex) {
@@ -286,6 +290,7 @@ class DefaultAsyncRequestDirector<T> imp
this.localContext.setAttribute(ExecutionContext.HTTP_TARGET_HOST, target);
this.localContext.setAttribute(ExecutionContext.HTTP_PROXY_HOST, proxy);
this.localContext.setAttribute(ExecutionContext.HTTP_CONNECTION, this.managedConn);
+ this.localContext.setAttribute(ClientContext.ROUTE, route);
if (this.currentRequest == null) {
this.currentRequest = this.mainRequest.getRequest();
Added: httpcomponents/httpasyncclient/trunk/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/ParamConfig.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpasyncclient/trunk/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/ParamConfig.java?rev=1463725&view=auto
==============================================================================
--- httpcomponents/httpasyncclient/trunk/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/ParamConfig.java (added)
+++ httpcomponents/httpasyncclient/trunk/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/ParamConfig.java Tue Apr 2 20:09:08 2013
@@ -0,0 +1,69 @@
+/*
+ * ====================================================================
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ * ====================================================================
+ *
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation. For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ *
+ */
+package org.apache.http.impl.nio.client;
+
+import java.util.Collection;
+
+import org.apache.http.auth.params.AuthPNames;
+import org.apache.http.client.config.RequestConfig;
+import org.apache.http.client.params.ClientPNames;
+import org.apache.http.client.params.HttpClientParams;
+import org.apache.http.conn.params.ConnRouteParams;
+import org.apache.http.params.HttpConnectionParams;
+import org.apache.http.params.HttpParams;
+import org.apache.http.params.HttpProtocolParams;
+
+@Deprecated
+final class ParamConfig {
+
+ private ParamConfig() {
+ }
+
+ @SuppressWarnings("unchecked")
+ public static RequestConfig getRequestConfig(final HttpParams params) {
+ return RequestConfig.custom()
+ .setAuthenticationEnabled(HttpClientParams.isAuthenticating(params))
+ .setCircularRedirectsAllowed(params.getBooleanParameter(ClientPNames.ALLOW_CIRCULAR_REDIRECTS, false))
+ .setConnectionRequestTimeout((int) HttpClientParams.getConnectionManagerTimeout(params))
+ .setConnectTimeout(HttpConnectionParams.getConnectionTimeout(params))
+ .setCookieSpec(HttpClientParams.getCookiePolicy(params))
+ .setProxy(ConnRouteParams.getDefaultProxy(params))
+ .setExpectContinueEnabled(HttpProtocolParams.useExpectContinue(params))
+ .setLocalAddress(ConnRouteParams.getLocalAddress(params))
+ .setMaxRedirects(params.getIntParameter(ClientPNames.MAX_REDIRECTS, 50))
+ .setProxyPreferredAuthSchemes((Collection<String>) params.getParameter(
+ AuthPNames.PROXY_AUTH_PREF))
+ .setTargetPreferredAuthSchemes((Collection<String>) params.getParameter(
+ AuthPNames.TARGET_AUTH_PREF))
+ .setRedirectsEnabled(HttpClientParams.isRedirecting(params))
+ .setRelativeRedirectsAllowed(!params.getBooleanParameter(ClientPNames.REJECT_RELATIVE_REDIRECT, false))
+ .setSocketTimeout(HttpConnectionParams.getSoTimeout(params))
+ .setStaleConnectionCheckEnabled(HttpConnectionParams.isStaleCheckingEnabled(params))
+ .build();
+ }
+
+}
Propchange: httpcomponents/httpasyncclient/trunk/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/ParamConfig.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: httpcomponents/httpasyncclient/trunk/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/ParamConfig.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: httpcomponents/httpasyncclient/trunk/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/ParamConfig.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: httpcomponents/httpasyncclient/trunk/httpasyncclient/src/test/java/org/apache/http/nio/client/integration/TestRedirects.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpasyncclient/trunk/httpasyncclient/src/test/java/org/apache/http/nio/client/integration/TestRedirects.java?rev=1463725&r1=1463724&r2=1463725&view=diff
==============================================================================
--- httpcomponents/httpasyncclient/trunk/httpasyncclient/src/test/java/org/apache/http/nio/client/integration/TestRedirects.java (original)
+++ httpcomponents/httpasyncclient/trunk/httpasyncclient/src/test/java/org/apache/http/nio/client/integration/TestRedirects.java Tue Apr 2 20:09:08 2013
@@ -506,6 +506,7 @@ public class TestRedirects extends HttpA
final HttpHost target = start(registry, null);
this.httpclient.getParams().setBooleanParameter(ClientPNames.ALLOW_CIRCULAR_REDIRECTS, false);
+ this.httpclient.getParams().setBooleanParameter(ClientPNames.REJECT_RELATIVE_REDIRECT, false);
final HttpGet httpget = new HttpGet("/circular-oldlocation/");
Modified: httpcomponents/httpasyncclient/trunk/pom.xml
URL: http://svn.apache.org/viewvc/httpcomponents/httpasyncclient/trunk/pom.xml?rev=1463725&r1=1463724&r2=1463725&view=diff
==============================================================================
--- httpcomponents/httpasyncclient/trunk/pom.xml (original)
+++ httpcomponents/httpasyncclient/trunk/pom.xml Tue Apr 2 20:09:08 2013
@@ -66,7 +66,7 @@
<properties>
<httpcore.version>4.3-alpha1</httpcore.version>
- <httpclient.version>4.2.3</httpclient.version>
+ <httpclient.version>4.3-alpha1</httpclient.version>
<commons-logging.version>1.1.1</commons-logging.version>
<!-- Note IO 2.3+ requires Java 6 -->
<commons-io.version>2.2</commons-io.version>