I am developing a Spring MVC app, and I need to check in my controller a certain condition. In case it were true, I have to return a 302 status code. It's something like this:
@RequestMapping(value = "/mypath.shtml", method = RequestMethod.GET)
public ModelAndView pageHandler(@Valid MyForm form, BindingResult result, HttpServletRequest request,
Locale locale) throws PageControllerException, InvalidPageContextException, ServiceException {
if (someCondition){
// return 302 status code
}
else{
// Do some stuff
}
}
Which is the best way to do this?
Thank you very much in advance
I finally managed to do it using @ResponseStatus
, as shown here:
https://stackoverflow.com/a/2067043/2982518
UPDATE
This is the way I finally did it:
@ResponseStatus(value = HttpStatus.MOVED_TEMPORARILY)
public class MovedTemporarilyException extends RuntimeException {
// ...
}
@RequestMapping(value = "/mypath.shtml", method = RequestMethod.GET)
public ModelAndView pageHandler(@Valid MyForm form, BindingResult result, HttpServletRequest request,
Locale locale) throws PageControllerException, InvalidPageContextException, ServiceException {
if (someCondition){
throw new MovedTemporarilyException();
}
else{
// Do some stuff
}
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With