从另一个类Vaadin的Bean ID访问Bean Id

时间:2013-07-10 18:14:54

标签: java hibernate javabeans vaadin

我有一个Bean类,其id指向另一个Bean类。例如:

String name;
String job;
UserLevel userlevel;

并且UserLevel类包含:

String level;
String permission;

所以我无法从userleve访问String级别。我创建了一个BeanItemContainer,它从数据库中获取信息,并将我的表的数据源设置为BeanItemContainer。我曾尝试使用mytable.addContainerProperty,但它没有用,我试过了:

Firsty try: mytable.addContainerProperty("userlevel", UserLevel.class, "");
Second try: mytable.addContainerProperty("level", String.class, ""):
Thrid try: mytable.addContainerProperty("userlevel", String.class, "");
Fourth try: mytable.addContainerProperty("userlevel.level", String.class, "");

1 个答案:

答案 0 :(得分:0)

您可以使用BeanItemContainer的addNestedContainerProperty方法。

container.addNestedContainerProperty("userlevel.level");

您可以在Vaadin书籍的这一章中的“嵌套属性”下找到更多信息: https://vaadin.com/book/-/page/datamodel.container.html

如果要从UserLevel访问所有字段,还有addNestedContainerBean方法。 AFAIK此方法用其子属性替换该属性。