I have a case where i need to :
- Return a 304 not modified status if the blog hasnt been modified
- Or return the blog view if it's been modified since If-Modified-Since request header
The problem is when i want to return 304 status, how do i tell spring mvc not to assume another view from the null return, and start sending the response with the status immediately ?
@RequestMapping(value={"/blogs/{blogId}"}, method=RequestMethod.GET)
public String hello(final HttpServletRequest req, final HttpServletResponse resp, final Model model,
@PathVariable("blogId") final String blogId) {
if (isModified(req, blogId)) {
resp.setStatus(HttpServletResponse.SC_NOT_MODIFIED);
return null; // this doesnt stop spring mvc to assume a view name
}
populate(model, grabBlog(blogId));
return "blog";
}