[ 
https://issues.apache.org/jira/browse/HTTPCORE-235?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12910301#action_12910301
 ] 

Oleg Kalnichevski commented on HTTPCORE-235:
--------------------------------------------

> he root cause was my own - I was closing the connection before trying to get 
> the data out of the response

What exactly do you mean by "closing the connection"? Calling #close() on the 
content input stream? If that is the case, the content codec simply consumes 
the remaining content in order to ensure the underlying connection could be 
kept-alive and re-used for subsequent requests. This is the normal mode of 
operation, which is not mean to cause an I/O exception of any kind. Only if an 
attempt is made to read form a closed stream an exception would be thrown.

Oleg

> EntityUtils.toString() doesn't detect/report less content being returned than 
> was promised
> ------------------------------------------------------------------------------------------
>
>                 Key: HTTPCORE-235
>                 URL: https://issues.apache.org/jira/browse/HTTPCORE-235
>             Project: HttpComponents HttpCore
>          Issue Type: Bug
>          Components: HttpCore
>    Affects Versions: 4.0.1
>            Reporter: Steve Loughran
>
> Also on my review of EntityUtils.toString(), I see that it's code to take an 
> input stream and a content length only uses the content length parameter to 
> set the size of the buffer -there is no attempt to verify that the amount of 
> data received was as expected and raise an {{IOException}} if less data 
> arrived. 
> While this code will appear to work, especially on loopback and local 
> connections, it is flawed long-haul where connections are often dropped 
> early. 
> I propose streaming the entity content to a byte array, validating the 
> length, then building a string in the appropriate charset from the buffer if 
> it is valid.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to