正确显示' AfterSignInMessagePage'

时间:2016-06-03 11:40:27

标签: java redirect login wicket

我的应用程序包含MainPage @AuthorizeInstantiationSignInPage

我希望在登录后但在MainPage之前向用户显示(可选)消息。

我想到了这一点,我想我可以通过在setReponsePage(AfterSignInMessagePage.class)的构造函数中调用MainPage来实现这一点。这似乎有点混乱,因为MainPage正在构建,但并不需要。 另一个选择是在setReponsePage(AfterSignInMessagePage.class)逻辑中执行SignInPage,但这看起来也太紧密了。

进行重定向的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

IMO你需要#onSuccessfulLogin()

中的逻辑
     if (showMsg) 
        setResponsePage(AfterSignInMessagePage.class) 
     else 
        setResponsePage(MainPage.class)

AfterSignInMessagePage可能只显示几秒钟,然后自动重定向到MainPage。

如果您不想继续使用方法/构造函数体的其余部分,也可以使用throw new RestartResponseException(SomePage.class)代替setResponsePage(...)