I am new to Spring so please forgive me if my question seems dumb.
I am unable to get @SessionAttributes (along with @ModelAttribute) to work in my Spring controller. What am I doing wrong? Here is the code ...
@Controller
@SessionAttributes("myAttribute")
public class MyController {
@ModelAttribute("myAttribute")
public String createMySessionAttribute() {
System.out.println("Inside of createMySessionAttribute");
return new String("mySessionAttribute");
}
//......
@RequestMapping("/doSomething.do")
public ModelAndView doSomething(HttpSession session, HttpServletRequest request) {
String sessionAttribute = (String)session.getAttribute("myAttribute");
String requestAttribute = (String)request.getAttribute("myAttribute");
String requestSessionAttribute = (String)request.getSession().getAttribute("myAttribute");
System.out.println(" sessionAttribute = " + sessionAttribute
+ "; requestAttribute = " + requestAttribute
+ "; requestSessionAttribute = " + requestSessionAttribute
);
ModelAndView modelAndView = new ModelAndView("nextPage");
return modelAndView;
}
}
and here is the output...
Inside of createMySessionAttribute
sessionAttribute = null; requestAttribute = null; requestSessionAttribute = null
I expected ...
Inside of createMySessionAttribute
sessionAttribute = mySessionAttribute; requestAttribute = mySessionAttribute; requestSessionAttribute = mySessionAttribute
Note that I tried retrieving the attribute from the request, the session, and the seesion from the request (which is probably redundant)
Thanks