2012-04-17 2 views
0

Возможно ли установить страницу с ошибкой, но это должно быть запущено не для всех URI, но, например, с/custom-path, а для запросов с URI/main-path do не обрабатывать ошибки?Страница ошибки Java в web.xml не для всех запросов

В web.xml я полагаю, что можно только сопоставить страницу с ошибками с определенными типами исключений.

Проблема заключается в том, что у нас есть один файл войны, внутри которого у нас есть как пользовательский интерфейс управления api, так и html. Поэтому, если ошибка возникает из rest api, она должна отображаться как есть, и страница с ошибкой не должна отображаться.

ответ

0

У меня была такая же проблема, и я решил ее, вызвав setStatus() на HttpServletResponse вместо того, чтобы бросать исключения или вызывать sendError().

Пример моего контроллера Spring MVC:

@RequestMapping(value = "/{ean}", method = RequestMethod.GET) 
@ResponseBody 
public User getUser(@PathVariable("id" Long id, HttpServletResponse response) { 

    // response.sendError(HttpServletResponse.SC_NOT_FOUND) 
    response.setStatus(HttpServletResponse.SC_NOT_FOUND) 
} 

Таким образом, мои RESTful API контроллеры не делают страницы ошибок.

Смежные вопросы