Java Wicket-表单提交后返回按钮

Java Wicket-表单提交后返回按钮,java,forms,wicket,Java,Forms,Wicket,我有一个表单和后退按钮的新问题 采取这种形式: public SearchSomethingForm() { super(ORSAWebConstants.FORM); setModel(new CompoundPropertyModel<Void>(this)); add(section01Panel); add(section02Panel); add(section03Panel); add(new SubmitButton()); 问题 提交表单后,我打开一个新页面,显示

我有一个表单和后退按钮的新问题

采取这种形式:

public SearchSomethingForm() {
super(ORSAWebConstants.FORM);
setModel(new CompoundPropertyModel<Void>(this));

add(section01Panel);
add(section02Panel);
add(section03Panel);
add(new SubmitButton());
问题

提交表单后,我打开一个新页面,显示结果。我想要一个返回到表单页面的按钮,每个预先输入的字段都已经编译好了,这样用户只需更改表单的一部分即可进行新的搜索

没有特定的PropertyModel,我无法编译属性映射到表单字段的对象。表单不知道将添加哪种类型的字段


如何解决这个问题?

经过一些测试,我发现Wicket可以通过页面中的整个页面,因此当我调用新页面时,我通过了表单页面:

SheetPage page = new SheetPage("SheetPage", idPojo,FormPage.this);
setResponsePage(page);
在SheetPage中,我将有一个指向上一页的链接:

public SheetPage(String title, String idPojo, final FormPage fPage) {
    Link back = new Link("back"){
       private static final long serialVersionUID = 1L;

       public void onClick() {
         setResponsePage(fPage);
      };
    };
}

当我返回到FormPage时,我会发现页面与打开表单完全预编译的工作表页面之前一样。太棒了

将状态存储在各种组件中而不是单个专用状态对象中,是否有特定的原因?
SheetPage page = new SheetPage("SheetPage", idPojo,FormPage.this);
setResponsePage(page);
public SheetPage(String title, String idPojo, final FormPage fPage) {
    Link back = new Link("back"){
       private static final long serialVersionUID = 1L;

       public void onClick() {
         setResponsePage(fPage);
      };
    };
}