I have a JTable
populated with a custom DataModel
(pasted below) and when I call the populate()
method, it appears to populat
You could try to make the changes of populate more atomic.
public void populate(Collection c) {
ArrayList> data2 = new ArrayList>();
for(Item i : c.getItems()) {
ArrayList row = new ArrayList();
for(Property p : i.getProperties().values()) {
row.add(p.toString());
}
data2.add(row);
}
data = data2;
fireTableDataChanged();
}
I am guessing that populate
is called again before a prior populate
call finished. And probably c
is changed during its iteration.