Некоторые вопросы по сервлету/причалу

Имея ServletAPI плюс конфигурации, которые вы можете сделать для причала или любого другого веб-контейнера

  1. Есть ли у нас способ ограничить размеры запросов? (т.е. закрыть соединение, если публикуется более 50 МБ)
  2. Можем ли мы каким-то образом остановить отправку запроса, который занимает слишком много времени?
  3. При отправке запроса в настроенном вами сервлете можем ли мы перенаправить (не перенаправить) запрос на сервлет «по умолчанию». ? Всегда ли это будет работать?

    RequestDispatcher rd = getServletContext().getNamedDispatcher("default");
    HttpServletRequest wrapped = new HttpServletRequestWrapper(req) {
      public String getServletPath() { return ""; }
    }; 
    rd.forward(wrapped, resp);
    

Заранее спасибо!


person David Hofmann    schedule 19.11.2009    source источник


Ответы (1)


Весне есть чем позаботиться об этом. Если вы используете Spring, вам повезло, иначе вам нужно создать собственное решение на основе того, что делает Spring. Я не могу говорить о других фреймворках, но я думаю, что многие другие фреймворки будут иметь некоторую поддержку для этого.

Взгляните на org.springframework.web.multipart.commons.CommonsMultipartResolver и org.springframework.web.multipart.MaxUploadSizeExceededException

CommonsMultipartResolver имеет свойство maxUploadSize, позволяющее контролировать максимальный размер.

person rahul    schedule 31.03.2011
comment
stackoverflow.com/questions/1414795/ может вас заинтересовать. Однако я не знаю ничего в API-интерфейсе сервлета, который позволяет отменить запрос. - person rahul; 02.04.2011