Я совершенно новый в Ваадине и столкнулся с следующим вопросом. Я пытаюсь представить свой список сущностей, используя Tree с группировкой по некоторым свойствам. Все было в порядке до первого уровня предметов. Что я сделал:Vaadin Tree из списка юридических лиц
MyEntity myEntity1 = new MyEntity(1l, "prop1", "sub_prop0")
MyEntity myEntity2 = new MyEntity(2l, "prop1", "sub_prop1")
MyEntity myEntity3 = new MyEntity(3l, "prop2", "sub_prop2")
BeanContainer<Long, MyEntity > entityContainer = new BeanContainer<>(MyEntity .class);
marketContainer.setBeanIdProperty("prop"); // prop is property name for the second value in constructor
entityContainer.addBean(myEntity1);
entityContainer.addBean(myEntity2);
entityContainer.addBean(myEntity3)
Tree markets = new Tree("Markets");
markets.setContainerDataSource(entityContainer);
в результате я получил дерево с 2 пунктов: prop1 и prop2, но ничего другого. На самом деле единственное, что мне нужно, это добавление sup-элементов со значениями другого свойства в качестве дочерних элементов.
Заранее спасибо.
Спасибо за ваш ответ. Означает ли это, что containerDataSource, в моем случае это BeanContainer, а отношения в дереве должны быть настроены по-разному? Я имею в виду, что я должен предоставить свой источник данных, а затем перебрать его и настроить отношения родителя/ребенка? – Marian
Если вы хотите определить его на уровне контейнера, вам необходимо использовать документ HierarchicalContainer, зарегистрированный здесь https://vaadin.com/api/com/vaadin/data/util/HierarchicalContainer.html. Там вам также нужно определить setParent (....) для детей (как вы могли бы в компоненте Tree) –
Еще раз спасибо, так что выглядит так, чтобы построить дерево с родителями и детьми, единственным ресурсом HierarchicalContainer является подходящий источник данных, но не BeanContainer, не так ли? – Marian