情况
我正在将一个项目从 迁移Wicket 1.5.7
到Wicket 6.12
,我得到的错误之一解释如下。
代码
@Override
protected void onSubmit() {
final String usernameValue = mail.getModelObject();
//Password is left empty in this particular case
AuthenticatedWebSession.get().signIn(usernameValue,"");
if (!continueToOriginalDestination())
{
setResponsePage(getApplication().getHomePage());
}
}
错误
这是我在更改检票口版本时遇到的错误: 操作员!对于参数类型未定义 void
注意:我在悬停时看到此错误!continueToOriginalDestination
我尝试了什么
在我对 stackoverflow 的搜索中,我遇到了这个问题: continueToOriginalDestination 不会让我回到原始页面
还检查了 apache wicket 上的这个主题:http: //apache-wicket.1842946.n4.nabble.com/Handling-ReplaceHandlerException-on-continueToOriginalDestination-in-wicket-1-5-td4101981.html#a4115437
所以我把我的代码改成这样:
@Override
public void onSubmit() {
final String usernameValue = mail.getModelObject();
AuthenticatedWebSession.get().signIn(usernameValue,"");
setResponsePage(getApplication().getHomePage());
throw new RestartResponseAtInterceptPageException(SignInPage.class);
}
问题
在我的特殊情况下,旧情况和代码更改似乎都有效。
- 也许这是一个小改动,是我的新代码错误,这应该如何工作?
- Wicket 是否发生了如此大的变化,以至于不再支持旧代码,或者也
!continueToOriginalDestination
可以使用?