июня
20
2012

Формы и валидация форм в Spring

Динамическое взаимодействие пользователя и веб-сайта с использованием форм является одной из важнейших деталей сайта. В этой статье будет рассказано о создании форм и проверки данных формы с использованием Spring MVC.

Далее
мая
10
2012

Ошибки HTTP-протокола в Spring MVC

В завершающей статье об обработке ошибок в Spring MVC рассмотрим обработку стандартных ошибок HTTP. Статья завершится кодом проекта, который содержит пример из каждой из рассматриваемых в этой серии статей.

Далее
мая
09
2012

SimpleMappingExceptionResolver и модель (ModelAndView)

Как уже было сказано ранее, главным недостатком использования SimpleMappingExceptionResolver при отлове исключений - это отсутствие возможности добавить данные в модель. В этой статье рассмотрим способ обойти это ограничение, создав класс, унаследованный от SimpleMappingExceptionResolver.

Далее
мая
09
2012

SimpleMappingExceptionResolver в Spring и обработка исключений

Следующий способ обработки исключений - с использованием SimpleMappingExceptionResolver. Этот способ является более глобальным по сравнению с аннотацией @ExceptionHandler, рассмотренной в предыдущей части. Если аннотация @ExceptionHandler ловит только исключения, произошедшие в контроллере, то SimpleMappingExceptionResolver ловит исключения, произошедшие в любой части приложения.

Далее
мая
08
2012

@ExceptionHandler в Spring и обработка ошибок

Первый из рассматриваемых способов обработки ошибок - с помощью аннотации @ExceptionHandler. Эта аннотация обрабатывает исключение, произошедшее в контроллере, как обычный запрос.

Далее
мая
07
2012

Обработка HTTP-ошибок 404, 500, 503 в Spring MVC

Обязательным условием любого уважающего себя сайта является корректная обработка HTTP-ошибок, а не отображения вместо них стандартной страницы с информацией об ошибке и ее описанием в стандартном для языка Java вида. В этой серии статей описывается несколько способов обработки как HTTP-ошибок, так и исключений. В конце статьи будет приведен исходник приложения, демонстрирующего/ обработку ошибок и исключений.

Далее
апреля
28
2012

Spring MVC и несколько ViewResolver

В Spring MVC есть возможность создавать цепочки объектов ViewResolver. Таким образом, обработка разных запросов может осуществлятся разными ViewResolver'ами и, соответственно, возвращаемый результат может быть абсолютно разным.

Далее
апреля
27
2012

Interceptor. Перехват запросов в Spring MVC

В Spring MVC есть возможность производить некие действия перед обработкой запроса, сразу после его обработки и перед отправкой ответа клиенту. Всё это можно сделать с помощью так называемых Interceptor'ов. Эти перехватчики (Interceptor) позволяют выполнять задачи, которые являются общими для каждого запроса или набора запросов, без необходимости копировать код в каждом методе контроллера. Например, можно выполнять аутентификацию пользователя прежде, чем запрос достигнет Вашего контроллера и, в случае успеха, получить некоторые дополнительные данные о пользователе из базы данных, добавив их в объект HttpServletRequest. С другой стороны, если запрос не прошел установленную Вами проверку (например, входит в список "опасных" запросов, похожих на хакерские) Вы можете перенаправить пользователя на другую страницу.

Далее
апреля
27
2012

Spring 3 и @Controller. Часть 3 (@CookieValue и @RequestHeader)

В заключительной части серии статей "Spring 3 и @Controller" будет рассмотрено только 2 простые аннотации: @CookieValue и @RequestHeader. Аннотация @CookieValue позволяет привязать параметр метода контролера к HTTP-cookie. Аннотация @RequestHeader позволяет привязать параметр метода контроллера к заголовку запроса.

Далее
апреля
26
2012

Исключение "Cannot create a session after the response has been committed"

Эта ошибка происходит в случае, когда Ваш код пытается получить доступ, использовать или создать объект HttpSession в то время, когда Ваше представление уже записало данные в исходящий поток сервлета. Но использовать HttpSession уже слишком поздно так как это требует добавления HTTP-заголовка Set-Cookie в исходящий поток сервлета, что можно сделать только в начале отправления ответа браузеру. Это и является причиной возникновения ошибки. В статье описано несколько способов устранения этого исключения.

Далее