我的代码是:
BeanItemContainer<TimeCardBean> results = new BeanItemContainer<TimeCardBean> (TimeCardBean.class);
for (TimeCardBean bean : beans) {
results.addBean(bean);
}
table.setContainerDataSource(results);
table.addGeneratedColumn("function",new ColumnGenerator(){
public Object generateCell(final Table source, final Object itemId, final Object columnId) {
Byte timecardSeq=
(Byte)source.addItem(itemId).getItemProperty("timeCardSeq").getValue();
Button btnChange= new Button("Change", new ClickListener() {
public void buttonClick(final ClickEvent event) {
TimeCardEditDialog editDialog = new TimeCardEditDialog(viewService);
editDialog.init(timecardSeq);
}
});
return btnChange;
}
我收到以下错误:
com.vaadin.ui.Table $ CacheUpdateException:表缓存更新期间出错。其他原因未显示。 在com.vaadin.ui.Table.maybeThrowCacheUpdateExceptions(Table.java:1716) 在com.vaadin.ui.Table.refreshRenderedCells(Table.java:1705) 在com.vaadin.ui.Table.refreshRowCache(Table.java:2638) 在com.vaadin.ui.Table.addGeneratedColumn(Table.java:4404)
希望你在我想表达的时候得到,有人可以告诉我这样做吗?