登录后重定向到正确的视图

时间:2012-07-09 18:38:04

标签: java spring spring-mvc velocity

我正在尝试为webapp实现登录功能。有一个使用JQuery的Javascript版本,并且有一个非Javascript版本。 Javascript版本运行正常,但我对非JS版本有问题:

目前,当用户点击“登录”时,我正在重新加载带有参数的同一页面,这会导致显示登录表单(这意味着我没有明确的登录视图)。

登录后或出现任何输入错误时,我希望ViewController返回用户启动登录过程的视图。我不能使用重定向,因为特别是被拒绝的值将丢失。我真正需要做的是重定向到打开登录表单的视图名称。

有没有一种优雅的方法可以做到这一点,还是使用单独的登录模板更好?

提前感谢任何输入!

1 个答案:

答案 0 :(得分:0)

使用spring {我猜你使用的是RedirectView"redirect://")并不是明确必要的重定向,你只需要将参数传递给同一个视图(使用ModelAndView或任何你使用),表明您是否应该显示登录表单。

如果您使用了经典#springFormInput,并相应地使用了#springShowErrors标记,则错误和值将在视图中恢复,显示在登录表单内部,因为您已通过变量来完成此操作在控制器中。

希望它有所帮助。