我想在打开特定的JSP页面之前检查会话中的值是否为null(authentification.jsp是映射的authentification.html并由AuthentificationController.java控制) 如果该值为null,我希望将用户重定向到其他页面,否则我希望他留在该页面中 我找不到解决方案,因为在控制器中我只有formBackingObject或onSubmit方法
答案 0 :(得分:0)
我假设您使用Spring 3.x,但另一方面,它看起来像是使用旧的Spring 2.0 (Simple)FormController
。
真的首先学习如何使用Spring 3.x基于注释的控制器和控制器方法。 (例如https://spring.io/guides/gs/serving-web-content/)
回到你的问题:
要在Spring 3.x基于注释的控制器方法中获取HttpSession
,只需向控制器方法添加类型HttpSession
的属性:
@Controller
public class SomeController {
@RequestMapping("/test")
public ModelAndView example(@RequestParam("name") String whatEver, ..., HttpSession session) {
if (session.getAttribute("theVarialbe") != null) {
return new ModelAndView(new RedirectView("somePage.html", true));
} else {
Model model = new Model();
return new ModelAndView("myJsp", model);
}
}
}