You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Oleg Kalnichevski (JIRA)" <ji...@apache.org> on 2012/06/03 13:37:23 UTC
[jira] [Resolved] (HTTPCLIENT-1199) DecompressingHttpClient strips
POST content from request
[ https://issues.apache.org/jira/browse/HTTPCLIENT-1199?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Oleg Kalnichevski resolved HTTPCLIENT-1199.
-------------------------------------------
Resolution: Fixed
Fix Version/s: 4.2.1
The problem with handling of entity enclosing requests has been fixed.
The redirect problem is a massively more complex one and its fix will require a significant refactoring. For the time being one can avoid problems with redirects by adding protocol interceptors directly to the protocol processing chain of the DefaultHttpClient instead of using DecompressingHttpClient decorator.
---
DefaultHttpClient httpClient = new DefaultHttpClient();
httpClient.addRequestInterceptor(new RequestAcceptEncoding());
httpClient.addResponseInterceptor(new ResponseContentEncoding());
---
Oleg
> DecompressingHttpClient strips POST content from request
> --------------------------------------------------------
>
> Key: HTTPCLIENT-1199
> URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1199
> Project: HttpComponents HttpClient
> Issue Type: Bug
> Components: HttpClient
> Affects Versions: 4.2 Final
> Environment: Ubuntu / openjdk-7
> Reporter: Guillaume Castagnino
> Fix For: 4.2.1
>
> Attachments: fix-wrapper.patch
>
>
> When upgrading from HttpClient 4.1 to HttpClient 4.2, I have to migrate my ContentEncodingHttpClient to a decorated DecompressingHttpClient.
> But there is a problem with HttpPost requests : the POST content is missing.
> Looking at the DecompressingHttpClient code : http://hc.apache.org/httpcomponents-client-ga/httpclient/clover/org/apache/http/impl/client/DecompressingHttpClient.html, the issue seems to be that DecompressingHttpClient use a HttpRequest wrapped by a RequestWrapper at line 130 to execute. But this wrapper only clone headers and params, disregarding the request type, so the entity is not cloned.
> When feeding the DecompressingHttpClient with a HttpPost request, this leads to partial request with no entity : over the network, I get POST requests with no content !
> Solution should be to stop using a wrapped request ?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org