2012-03-19 3 views
0

을 반환 .consume (httpResponse.getEntity()). EntityUtils.toString (httpResponse.getEntity())에 대한 호출이 완벽하게 정상적으로 작동하는 반면 코드에서 IOException이 발생합니다. 문제가 무엇인지에 대한 아이디어가 있습니까? 또는 IOException을 수정하기위한 제안 사항이 있습니까?EntityUtils 내가 EntityUtils.consume에 대한 호출을 만드는 중이라서 내 프로그램에서 IOException이

if(status >= 200 && status < 300) { 
     HttpEntity httpEntity = httpResponse.getEntity(); 
     if (httpEntity != null) { 
      if(httpEntity.getContentLength() > Constants.HTTP.MAX_APP_CONTENT_LENGTH) { 
       throw new IllegalArgumentException("HTTP entity too large.");        
      } 
     result = EntityUtils.toString(httpEntity,"UTF-8"); 
     EntityUtils.consume(httpEntity);     
     } 
    } 

답변

1

아파치 HttpCore에 익숙하지 않은,하지만 난 당신이 HttpServletRequest의에서 두 번 날짜를 읽을 수 없습니다 서블릿에서 알고있다. 그것의 버퍼를 사용하고 일단 버퍼가 끝에 있다면, 당신이 그것을 두 번 읽으려고하면 버퍼가 비어 있기 때문에 IOException을 얻는다.