ValueExpression idExpression = getColumnIdExpression();
int colIndex = 0;
for (Iterator iterator = colDatas.iterator(); iterator.hasNext(); colIndex++) {
Object colData = iterator.next();
requestMap.put(var, colData);
DynamicColumn column = justUpdateExistingColumns
? (DynamicColumn) oldColumns.get(colIndex)
: new DynamicColumn();
newColumns.add(column);
if (!justUpdateExistingColumns) {
if (idExpression != null)
column.setId((String) idExpression.getValue(getFacesContext().getELContext()));
else {
column.setId(getId() + "_" + colIndex);
}
}
column.setColumns(this);
column.setColData(colData);
column.setColIndex(colIndex);
column.setRendered(getColumnRendered());
column.setType(getColumnType());
TableUtil.copyColumnAttributes(this, column);
column.setValueExpression(getColumnValueExpression());
applySortingParameters(column);
applyFilteringParameters(context, column);
requestMap.put(var, prevVarValue);