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 2007/12/15 15:35:21 UTC
svn commit: r604433 - in /jakarta/httpcomponents/httpclient/trunk: ./
module-client/src/examples/org/apache/http/examples/client/
module-client/src/main/java/org/apache/http/client/protocol/
module-client/src/main/java/org/apache/http/impl/client/
Author: olegk
Date: Sat Dec 15 06:35:20 2007
New Revision: 604433
URL: http://svn.apache.org/viewvc?rev=604433&view=rev
Log:
HTTPCLIENT-711: Bad route computed for redirected requests
Modified:
jakarta/httpcomponents/httpclient/trunk/RELEASE_NOTES.txt
jakarta/httpcomponents/httpclient/trunk/module-client/src/examples/org/apache/http/examples/client/ClientProxyAuthentication.java
jakarta/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/client/protocol/RequestAddCookies.java
jakarta/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/client/DefaultClientRequestDirector.java
jakarta/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/client/DefaultHttpClient.java
Modified: jakarta/httpcomponents/httpclient/trunk/RELEASE_NOTES.txt
URL: http://svn.apache.org/viewvc/jakarta/httpcomponents/httpclient/trunk/RELEASE_NOTES.txt?rev=604433&r1=604432&r2=604433&view=diff
==============================================================================
--- jakarta/httpcomponents/httpclient/trunk/RELEASE_NOTES.txt (original)
+++ jakarta/httpcomponents/httpclient/trunk/RELEASE_NOTES.txt Sat Dec 15 06:35:20 2007
@@ -1,6 +1,9 @@
Changes since 4.0 Alpha 2
-------------------
+* [HTTPCLIENT-711] Bad route computed for redirected requests
+ Contributed by Oleg Kalnichevski <olegk at apache.org>
+
* [HTTPCLIENT-705] Fixed incorrect handling of URIs with null path component
Contributed by Oleg Kalnichevski <olegk at apache.org>
Modified: jakarta/httpcomponents/httpclient/trunk/module-client/src/examples/org/apache/http/examples/client/ClientProxyAuthentication.java
URL: http://svn.apache.org/viewvc/jakarta/httpcomponents/httpclient/trunk/module-client/src/examples/org/apache/http/examples/client/ClientProxyAuthentication.java?rev=604433&r1=604432&r2=604433&view=diff
==============================================================================
--- jakarta/httpcomponents/httpclient/trunk/module-client/src/examples/org/apache/http/examples/client/ClientProxyAuthentication.java (original)
+++ jakarta/httpcomponents/httpclient/trunk/module-client/src/examples/org/apache/http/examples/client/ClientProxyAuthentication.java Sat Dec 15 06:35:20 2007
@@ -34,7 +34,6 @@
import org.apache.http.auth.AuthScope;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.client.methods.HttpGet;
-import org.apache.http.conn.HttpRoute;
import org.apache.http.conn.params.ConnRoutePNames;
import org.apache.http.impl.client.DefaultHttpClient;
Modified: jakarta/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/client/protocol/RequestAddCookies.java
URL: http://svn.apache.org/viewvc/jakarta/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/client/protocol/RequestAddCookies.java?rev=604433&r1=604432&r2=604433&view=diff
==============================================================================
--- jakarta/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/client/protocol/RequestAddCookies.java (original)
+++ jakarta/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/client/protocol/RequestAddCookies.java Sat Dec 15 06:35:20 2007
@@ -159,7 +159,7 @@
}
}
// Generate Cookie request headers
- if (cookies.length > 0) {
+ if (!matchedCookies.isEmpty()) {
List<Header> headers = cookieSpec.formatCookies(matchedCookies);
for (int i = 0; i < headers.size(); i++) {
request.addHeader(headers.get(i));
Modified: jakarta/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/client/DefaultClientRequestDirector.java
URL: http://svn.apache.org/viewvc/jakarta/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/client/DefaultClientRequestDirector.java?rev=604433&r1=604432&r2=604433&view=diff
==============================================================================
--- jakarta/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/client/DefaultClientRequestDirector.java (original)
+++ jakarta/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/client/DefaultClientRequestDirector.java Sat Dec 15 06:35:20 2007
@@ -32,7 +32,6 @@
package org.apache.http.impl.client;
import java.io.IOException;
-import java.net.InetAddress;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.Map;
@@ -833,7 +832,6 @@
HttpRoute route = roureq.getRoute();
HttpHost target = route.getTargetHost();
HttpHost proxy = route.getProxyHost();
- InetAddress localAddress = route.getLocalAddress();
HttpParams params = request.getParams();
if (HttpClientParams.isRedirecting(params) &&
@@ -852,24 +850,15 @@
uri.getPort(),
uri.getScheme());
- Scheme schm = connManager.getSchemeRegistry().
- getScheme(newTarget.getSchemeName());
-
- HttpRoute newRoute = new HttpRoute(
- newTarget,
- localAddress,
- proxy,
- schm.isLayered(),
- (proxy != null),
- (proxy != null));
-
HttpGet redirect = new HttpGet(uri);
+ redirect.setParams(params);
+ RoutedRequest newRequest = determineRoute(newTarget, redirect, context);
if (LOG.isDebugEnabled()) {
- LOG.debug("Redirecting to '" + uri + "' via " + newRoute);
+ LOG.debug("Redirecting to '" + uri + "' via " + newRequest.getRoute());
}
- return new RoutedRequest.Impl(redirect, newRoute);
+ return newRequest;
}
CredentialsProvider credsProvider = (CredentialsProvider)
Modified: jakarta/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/client/DefaultHttpClient.java
URL: http://svn.apache.org/viewvc/jakarta/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/client/DefaultHttpClient.java?rev=604433&r1=604432&r2=604433&view=diff
==============================================================================
--- jakarta/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/client/DefaultHttpClient.java (original)
+++ jakarta/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/client/DefaultHttpClient.java Sat Dec 15 06:35:20 2007
@@ -32,9 +32,6 @@
package org.apache.http.impl.client;
import org.apache.http.ConnectionReuseStrategy;
-import org.apache.http.HttpException;
-import org.apache.http.HttpHost;
-import org.apache.http.HttpRequest;
import org.apache.http.HttpVersion;
import org.apache.http.auth.AuthSchemeRegistry;
import org.apache.http.client.AuthenticationHandler;
@@ -43,8 +40,8 @@
import org.apache.http.client.HttpRequestRetryHandler;
import org.apache.http.client.RedirectHandler;
import org.apache.http.client.params.AuthPolicy;
-import org.apache.http.client.params.CookiePolicy;
import org.apache.http.client.params.ClientPNames;
+import org.apache.http.client.params.CookiePolicy;
import org.apache.http.client.protocol.ClientContext;
import org.apache.http.client.protocol.RequestAddCookies;
import org.apache.http.client.protocol.RequestDefaultHeaders;
@@ -53,7 +50,6 @@
import org.apache.http.client.protocol.ResponseProcessCookies;
import org.apache.http.conn.ClientConnectionManager;
import org.apache.http.conn.ClientConnectionManagerFactory;
-import org.apache.http.conn.HttpRoute;
import org.apache.http.conn.HttpRoutePlanner;
import org.apache.http.conn.PlainSocketFactory;
import org.apache.http.conn.Scheme;