[ 
https://issues.apache.org/jira/browse/HTTPCLIENT-1075?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13019367#comment-13019367
 ] 

James Abley commented on HTTPCLIENT-1075:
-----------------------------------------

Oleg,

I suggest editing the name of this issue to be 
"ContentEncodingHttpClient.execute(HttpGet, ResponseHandler<T>) throws 
IOException when reading compressed response" to make it clearer what the 
underlying issue was? It affected both deflate and gzip responses, and the fix 
handles both cases. Chunking had no bearing on the bug as far as I can tell.

Thanks,

James

> ContentEncodingHttpClient.execute(HttpGet, ResponseHandler<T>) throws 
> IOException when reading chunked gzip response
> --------------------------------------------------------------------------------------------------------------------
>
>                 Key: HTTPCLIENT-1075
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1075
>             Project: HttpComponents HttpClient
>          Issue Type: Bug
>          Components: HttpClient
>    Affects Versions: 4.1.1
>         Environment: I'm using HttpClient 4.1.1 on Mac OS X 10.6.7.
> `java -version` output:
> java version "1.6.0_24"
> Java(TM) SE Runtime Environment (build 1.6.0_24-b07-334-10M3326)
> Java HotSpot(TM) 64-Bit Server VM (build 19.1-b02-334, mixed mode)
>            Reporter: Adam Hahn
>             Fix For: 4.1.2
>
>         Attachments: 
> 0001-HTTPCLIENT-1075-ContentEncodingHttpClient-fails-when.patch
>
>
> The following snippet:
>     String url = "http://yahoo.com";;
>     HttpClient httpClient = new ContentEncodingHttpClient();
>     HttpGet get = new HttpGet(url);
>     String content = httpClient.execute(get, new BasicResponseHandler());
> throws:
> java.io.IOException: Attempted read from closed stream.
>       at 
> org.apache.http.impl.io.ChunkedInputStream.read(ChunkedInputStream.java:126)
>       at java.util.zip.CheckedInputStream.read(CheckedInputStream.java:42)
>       at java.util.zip.GZIPInputStream.readUByte(GZIPInputStream.java:205)
>       at java.util.zip.GZIPInputStream.readUShort(GZIPInputStream.java:197)
>       at java.util.zip.GZIPInputStream.readHeader(GZIPInputStream.java:136)
>       at java.util.zip.GZIPInputStream.<init>(GZIPInputStream.java:58)
>       at java.util.zip.GZIPInputStream.<init>(GZIPInputStream.java:68)
>       at 
> org.apache.http.client.entity.GzipDecompressingEntity.getContent(GzipDecompressingEntity.java:63)
>       at 
> org.apache.http.conn.BasicManagedEntity.getContent(BasicManagedEntity.java:88)
>       at org.apache.http.util.EntityUtils.consume(EntityUtils.java:65)
>       at 
> org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:974)
>       at 
> org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:919)
>       at 
> org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:910)
>       at tv.adap.service.HttpPoolTest.testChunkedGzip(HttpPoolTest.java:41)
> whereas the following snippet runs fine:
>     String url = "http://yahoo.com";;
>     HttpClient httpClient = new ContentEncodingHttpClient();
>     HttpGet get = new HttpGet(url);
>     HttpResponse response = httpClient.execute(get);
>     HttpEntity entity = response.getEntity();
>     String content = EntityUtils.toString(entity);
> These two snippets should be functionally the same (putting the entity body 
> into content). Creating a JIRA per the recommendation of Oleg from 
> httpclient-users.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@hc.apache.org
For additional commands, e-mail: dev-h...@hc.apache.org

Reply via email to