如何使用NestedBeanPropertyDefinition 在Vaadin 12.0.7?

问题描述 投票:1回答:1

我目前正在尝试使用Vaadin中的绑定器来访问对象的嵌套属性。谷歌搜索后,我找到了一个参考例,它很好地总结了我的问题(Original post):

假设你有2个豆子:

public class Bean {
private SubBean sub;
// + getter setter
}
public class SubBean {
private String name;
// + getter setter

你认为你应该能够做到这样的事情:

Binder<Bean> binder = new Binder<>(Bean.class);
binder.bind(new TextField(), "sub.name");

这怎么会导致例外。在讨论了Vaadins存储库之后,这个问题被称为NestedPropertyDefinitionsPotential solution referenced in the issue discussion which lead to closing the issue)的东西关闭了。

我正在查找它,但只是找到了如何使用它或如何使用Vaadin绑定系统轻松访问嵌套属性的任何信息,除了这一个Documentation

任何人都可以向我解释如何使用NestedPropertyDefinitions

java vaadin vaadin10
1个回答
0
投票

我发现这个:

binder.forField(new TextField()).bind("sub.name")

在Vaadin 12.0.7中有效。它也适用于网格和粘合剂。显然,没有必要使用NestedPropertyDefinitions来实现嵌套绑定。我的后端有一个错误导致错误,使我认为绑定无法正常工作。所以我仍然不知道是否有另一种方法来实现这个或什么NestedPropertyDefinitionsdo但我认为它们被Vaadin内部使用。

根据Cashbees的评论,NestedPropertyDefinitions只在内部使用,如何处理嵌套属性在这个documentation中是间接引用的。

© www.soinside.com 2019 - 2024. All rights reserved.