Я увеличиваю размер буфера ответа с помощью ServletResponse.setBufferSize, но Tomcat 7 все еще бросает исключение, что размер буфера недостаточно велик. Это ошибка в Tomcat 7.0.32?ServletResponse.setBufferSize не работает в Tomcat 7?
Вот мой псевдо/код -
@Override
protected void writeInternal(Object o, HttpOutputMessage outputMessage)
throws IOException, HttpMessageNotWritableException {
if (some condition)
{
((ServletServerHttpResponse)outputMessage).getServletResponse().setBufferSize(Integer.MAX_VALUE);
outputMessage.getHeaders().set("Custom-Header", gson.toJson(big payload));
}
// ...
Это исключение -
org.apache.coyote.http11.HeadersTooLargeException
: Была сделана попытка записать больше данных в заголовки ответа, чем Был номер в буфере. Увеличьте maxHttpHeaderSize на коннекторе или напишите меньше данных в заголовки ответов.
Нужно ли сбросить буфер? reset()
не работает.
EDIT: Я ищу возможность изменять максимальный размер заголовка на уровне индивидуального ответа на основе «некоторого состояния».
Пропустите полезную нагрузку, как тело ответа, а не 'Custom-Header.' – EJP