我有一个从Web服务器收到的HttpEntity。如果我用getContentLength()检查HttpEntity,它会显示一个值>所以似乎有内容。我运行getContent()来获取一个InputStream,并在该InputStream上运行read()来获取内容。在第一次read()操作时,它抛出一个IO Exception,表示流已关闭“在关闭流上尝试读取。”。
我的代码是:
HttpEntity myEntity = myResponse.getEntity();
InputStream inputStream = myEntity.getContent();
inputStream.read();
所以我没有在该流上调用close()。我不能排除HttpEntity出现问题,在调试器中查看myEntity(不知道是否有帮助):
is1=EofSensorInputStream
eofWatcher=BasicManagedEntity
selfClosed=true
wrappedStream=null
InputStream上的getContentLength()显示HttpEntity上的值。
我不知道从哪里开始寻找问题。我可以检查什么来查找问题?
答案 0 :(得分:-1)
请参阅this link,其中 REPEATABLE 实体只能使用getContent()
和writeTo(OutputStream)
程序一次。
要知道您的实体是否为 REPEATABLE ,请使用isRepeatable()
。