Grails перенаправляет на страницу в случае ошибки

#grails #redirect

#grails #перенаправление

Вопрос:

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

Охватывает все ошибки .. возможно ли это?

Ответ №1:

Grails уже делает это за вас. Если исключение всплывает в контейнере, оно обрабатывается как HTTP 500 (внутренняя ошибка сервера). С помощью conf/URLMappings.groovy вы можете контролировать, что происходит при возникновении статусов ошибок.

Вот сопоставление по умолчанию для 500 ответов (от conf/URLMappings.groovy ):

 "500"(view:'/error')
  

Это указывает приложению отобразить error представление, которое находится в views/error.gsp . Если вы хотите изменить это, вы можете. Вы могли бы перенаправить на контроллер / действие, если хотите:

 // will go to 'custom' action of ErrorController, which you would create yourself
"500"(controller: "error", action: "custom")
  

Вы можете настроить это для любого статуса HTTP-ответа. Смотрите документацию по сопоставлениям URL. Если вам нужен более точный контроль над различными исключениями, которые могут возникнуть, посмотрите раздел «Декларативная обработка ошибок» в документах, на которые даны ссылки выше.