Why spring MVC optionally returning no view in a single mapping

Total Post:70

 1837  View(s)
Rate this:

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)) {
        return null; // this doesnt stop spring mvc to assume a view name
    populate(model, grabBlog(blogId));
    return "blog";

  1. Post:61

    Re: Why spring MVC optionally returning no view in a single mapping

    From the HTTP perspective returning a view doesn't make sense at all. The Spring documentation covers that use case:

    public String myHandleMethod(WebRequest webRequest, Model model) {
        long lastModified =// 1. application-specific calculation
        if (request.checkNotModified(lastModified)) {
            // 2. shortcut exit - no further processing necessary
            return null;
        // 3. or otherwise further request processing, actually preparing content
        return "myViewName";


      Modified On Apr-09-2018 01:00:23 AM


Please check, If you want to make this post sponsored

You are not a Sponsored Member. Click Here to Subscribe the Membership.