Инициировать 404 в контроллере Spring-MVC?

Как я заставляю контроллер Spring 3.0 инициировать 404?

У меня есть контроллер с @RequestMapping(value = "/**", method = RequestMethod.GET) и для некоторых URL, получающих доступ к контроллеру, я хочу, чтобы контейнер придумал 404.

182
задан Peter Mortensen 5 October 2014 в 05:19
поделиться

2 ответа

Начиная с Spring 3.0 также можно выдать Исключение, объявленное с аннотация @ResponseStatus :

@ResponseStatus(value = HttpStatus.NOT_FOUND)
public class ResourceNotFoundException extends RuntimeException {
    ...
}

@Controller
public class SomeController {
    @RequestMapping.....
    public void handleCall() {
        if (isFound()) {
            // whatever
        }
        else {
            throw new ResourceNotFoundException(); 
        }
    }
}
310
ответ дан 23 November 2019 в 06:03
поделиться

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

http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/mvc.html#mvc-ann-requestmapping-arguments

36
ответ дан 23 November 2019 в 06:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: