Pieter
Pieter

Reputation: 32775

Adding an attribute to a ModelAndView

I'm writing a HandlerInterceptor that needs to insert a certain session-scoped bean into the Model. postHandle's signature looks like this:

public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception

ModelAndView has no addAttribute function. How can I add an attribute to a ModelAndView so that I can access it with request.getAttribute inside my views?

Upvotes: 9

Views: 15360

Answers (1)

Bozho
Bozho

Reputation: 597204

Use modelAndView.addObject("key", value)

There are also some other indirect ways, through modelAndView.getModel() or modelAndView.getModelMap(). But you should prefer the addObject(..) version. In fact it invokes getModelMap().addAttribute(..)

Upvotes: 19

Related Questions