@ResponseStatus и web.xml <страница ошибки> - PullRequest
1 голос
/ 21 января 2011

Вот что у меня есть: контроллер:

public abstract class MyController {
   @ExceptionHandler(Exception.class)
   @ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
   public void handleAllExceptions(Exception e) {
      // stuff
   }
}

и мой web.xml:

<error-page>
  <error-code>500</error-code>
  <location>/error.htm</location>
</error-page>

И когда происходит непредвиденное исключение, дескриптор работает, все готово, но я не перенаправлен в /error.htm

Вместо этого я все еще на той же странице, но apache выдает ошибку 500.

Что я пропустил?

Спасибо:)

1 Ответ

3 голосов
/ 21 января 2011

Я думаю, вам нужно вернуть вид, который вы хотите показать.

@ExceptionHandler(Exception.class)
@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
public String handleAllExceptions(Exception e) {
  return "error.jsp"; /* use the correct view name */
}

@ см .: Проблемы реализации обработчика исключений контроллера Spring 3 для некоторых примеров

...