这是onSubmit()
我的 Wicket 1.5 应用程序登录页面的方法:
@Override
public void onSubmit() {
super.onSubmit();
User theUser = loginForm.getModelObject();
/* call a DAO function to check the user's credentials */
if(/* DAO call succeeds*/) {
MyCustomeSession authSession = (MyCustomSession)Session.get();
authSession.success("Welcome, " + theUser.getFullName());
setResponsePage(new HomePage());
}
else {
loginForm.error("Username or password was incorrect");
}
}
这对于初始登录和注销然后重新登录都很好,因为接下来看到的是带有欢迎消息的主页。
会话超时后,此应用程序将用户重定向回同一登录页面,并带有反馈消息“您的会话已过期等等等等”,并允许用户再次输入用户名和密码。如果用户这样做,则登录成功:隐藏的菜单变为可见,欢迎消息显示等。
但是,显示的页面仍然是登录页面,并带有有关所需用户名和密码的附加反馈消息(即使两者都已输入并且登录成功)。这是一个剪辑的屏幕截图:
这是 Wicket 的一些奇怪的事情吗?有修复或解决方法吗?