CloseBleableHttPresponsJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 CloseBleableHttPrespons

Сообщение Anonymous »

Мой метод контроллера возвращает inputStreamResource в корпусе ответа. Я получаю входной сериал от stockeblehttpresponse в блоке try, и я закрываю Closablehttprespons Создайте inputStreamResource от InputStream, потому что ClosableHttpresponse уже закрыт .
Что может быть возможным решением в этом случае? Могу ли я каким -то образом закрыть ClosableHttpresponse после возвращения InputStreamResource? Мне действительно нужно использовать closablehttpclient , и метод должен вернуть некоторые Stream .
public ResponseEntity getFileAsStream(@PathVariable("uuid") String uuid) throws IOException, InterruptedException {
CloseableHttpResponse response = fileService.importFileByUuid(uuid);
try {
HttpEntity entity = response.getEntity();
HttpHeaders responseHeaders = new HttpHeaders();
responseHeaders.add(HttpHeaders.CONTENT_LENGTH, String.valueOf(entity.getContentLength()));
responseHeaders.add(HttpHeaders.CONTENT_TYPE, entity.getContentType().getValue());
responseHeaders.add(HttpHeaders.CONTENT_DISPOSITION, response.getFirstHeader(HttpHeaders.CONTENT_DISPOSITION).getValue());

if (entity != null) {
InputStream inputStream = entity.getContent();
InputStreamResource inputStreamResource = new InputStreamResource(inputStream);
return ResponseEntity.ok()
.headers(responseHeaders)
.body(inputStreamResource);
}
throw new IllegalStateException(String.format(
"Error during stream downloading, uuid = %s", uuid));
} finally {
response.close();
}
}


Подробнее здесь: https://stackoverflow.com/questions/756 ... spring-mvc
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»