我看到有两种方法可以在Wicket的网页中设置responsePage:
setResponsePage(new MyPage());
或
setResponsePage(MyPage.class);
这两者之间有什么区别?
第一个将重定向到可添加书签的URL。
另请参阅Wicket常见问题解答。
Wicket的医生说它最好:
"如果您想在浏览器中有一个可添加书签的url(您的页面必须有默认构造函数或PageParameter构造函数),则可以使用setResponsePage(new MyWebPage())(或setResponse page(new MySWebPage(myPageParameters))。如果要将信息传递到服务器端的页面,则可以使用setResponsePage(MyWebPage.class)。这会生成一个特定于会话的url(大多数时候可以使用混合url编码策略)。"
此处
不同之处在于,您可以将参数发送到.setResponsePage(新网页(p1,p2,p3)),而在.setResponsePage(WebPage.class)
中则不能。
如果您装载页面,当您装载页面时,.setResponsePage([WebPage.class])
2将向您在WicketApplication
中定义的url发送一个用户,执行以下操作:
public void init() {
this.mountPage("/myPage", **WebPage.class**)
}