Значение и решение для сообщения об ошибке Spring 3? «Вместо этого рекомендуется использовать getResponseBodyAsStream» - PullRequest
12 голосов
/ 15 сентября 2010

Я использую Spring 3 и каждый раз, когда я отправляю HTML-форму в контроллер Spring, я получаю это сообщение, которое я не понимаю:

org.apache.commons.httpclient.HttpMethodBase getResponseBody
WARNING: Going to buffer response body of large or unknown size. 
Using getResponseBodyAsStream instead is recommended.

Могу ли я изменить конфигурацию весной, чтобы избежать этого?

Ответы [ 2 ]

16 голосов
/ 15 сентября 2010

Это происходит с API commons-httpclient, когда используется метод getResponseBody (). Предупреждение означает, что тело ответа может быть очень большим (например, загрузка большого файла и т. Д.), И загрузка всего объекта в память одновременно, поскольку строка может быть очень неэффективной. Чтобы избежать этой потенциальной неэффективности, используйте getResponseBodyAsStream (), который позволит правильно буферизовать и передавать тело ответа.

Я не уверен, почему Spring использует getResponseBody (). Это может быть ваш HTTP-клиент? Используете ли вы пользовательский HTTP-клиент для выполнения запроса?

1 голос
/ 18 октября 2016

Вы можете добавить конфигурацию http.method.response.buffer.warnlimit=1024*1024*10 в application.properties. это работает для меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...