GenerateCell в vaadin
У меня есть таблица, в которой есть столбец combobox, в слушателе valueChange combobox я генерирую другой столбец. Все думают, что все в порядке, и был добавлен второй столбец, но я потерял значение поля со списком, и оно было сброшено. Как я понимаю, функция generateCell запускается два раза. Не могли бы вы помочь мне? Вы можете увидеть мой код ниже:
getTable().addGeneratedColumn("action", new Table.ColumnGenerator() {
@Override
public Object generateCell(Table source, Object itemId, Object columnId) {
ComboBox comboBox = new ComboBox();
comboBox.addListener(new Property.ValueChangeListener() {
@Override
public void valueChange(Property.ValueChangeEvent event) {
taskTable.getTable().addGeneratedColumn("rejectReason",
new Table.ColumnGenerator() {
@Override
public Object generateCell(final Table source1, final Object itemId1, Object columnId1) {
ComboBox comboBox1 = new ComboBox();
comboBox1.select((comboBox1.getContainerDataSource()).firstItemId());
return comboBox1;
}
}
);
}
});
return comboBox;
}
});