Wicket模型对象实例正在发生变化

时间:2013-10-23 16:44:35

标签: java wicket

我创建了一个像这样的Wicket模型:

IModel<MyObject> myModel = new Model<MyObject>(new MyObject());

为了调试问题,我创建了这个片段:

modalWindow.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() {
            public void onClose(AjaxRequestTarget target) {
            System.out.println(myModel.getObject());
            }
        });

每次调用onClose时,都会打印出不同的对象实例。有人可以向我解释为什么会这样吗?这是正确的行为吗? myModel模型对象不应该每次都是同一个实例吗?

2 个答案:

答案 0 :(得分:0)

您的模型和包含的MyObject与页面一起序列化。因此,identityHasCode会发生变化,逻辑上它仍然是同一个对象。

答案 1 :(得分:0)

谢谢。通过使用Panel而不是modalWindow,这种情况不再发生了。