当手动更改属性时,BeanItem不会更新多个关联的字段

时间:2015-09-21 10:27:25

标签: vaadin

我正在挠头,试图弄清楚为什么BeanItem的属性不会更新组件Field的值 - 不止一次:(。

class MyComponent extends CustomComponent {
    TextField firstNames
    BeanItem<MyObject> bean = new BeanItem<MyObject>(new MyObject())

    MyComponent() {
        Layout layout = new FormLayout()
        setCompositionRoot(layout)

        firstNames = new TextField("First Names")
        layout.addComponent(firstNames)

        FieldGroup binder = new FieldGroup(bean)
        binder.bindMemberFields(this)
    }

    void setFromAccount(MyObject newObject) {
        bean.getItemProperty("firstNames").setValue(newObject.firstNames)
    }
}

第一次调用setFromAccount时,屏幕上会更新firstNames文本字段的值。第二次它不是,第一个值仍然存在。

有谁知道发生了什么?我认为每当我在底层属性上设置值时,所有内容都通过内部侦听器进行更新。为什么它只是第一次发生?

0 个答案:

没有答案