ServletRequest.getParameter всегда возвращает ноль, когда размер сообщения велик - PullRequest
2 голосов
/ 13 сентября 2011

Мы поддерживаем веб-приложение spring mvc (2.5.6), работающее на Tomcat 6.0.14

В нашем приложении есть ошибка, из-за которой одно текстовое поле увеличило свой размер, что привело к публикации в 3.000.000 байт текста.

Мы исправим эту ошибку, но меня беспокоит то, что когда размер поста становится таким большим, метод ServletRequest.getParameter молча завершается неудачей и возвращает ноль.В журналах нет никаких признаков какой-либо ошибки.

Это ошибка MVC этой пружины?

Это неверная конфигурация tomcat?

Почему я не вижу никаких исключений вжурналы?

Ответы [ 2 ]

2 голосов
/ 13 сентября 2011

Неисправность этой пружины?

Это неверная конфигурация кота?

Ни. Вы превышаете стандартное значение Tomcat maxPostSize, которое составляет 2 МБ.

Ссылка: http://tomcat.apache.org/tomcat-6.0-doc/config/http.html#Common_Attributes


Кстати, 6.0.14 действительно старый. Вы должны обновить до последней версии (6.0.33 или 7.0.21) как можно скорее, чтобы получить исправления для недавно обнаруженного недостатка отказа в обслуживании и более ранних проблем безопасности.

1 голос
/ 13 сентября 2011

Что ж, по умолчанию размер POST составляет 2 МБ в Apache Tomcat.

Вы можете изменить параметр maxPostSize в теге Connector в файле server.xml Tomcat.

См.http://tomcat.apache.org/tomcat-6.0-doc/config/http.html

...