One way to achieve this kind of behavior is through setting the read-only property of the components in the column (like #{row.bindings.Retrieved.inputValue eq 'Y'}). If a table has multiple columns, it would be a laborious process.
To achieve the same one can override the "isAttributeUpdateable" method in the EntityImpl. Following is the code snippet:
// Comment
public boolean isAttributeUpdateable(int index) {
if("Y".equals(getSeededFlag())) return false;
//Description column is always updatable
// if not a seeded record
if(index!=DESCRIPTION)
{
//If new record, attributes should be updatable
if(this.STATUS_NEW == this.getEntityState() ||
this.STATUS_INITIALIZED == this.getEntityState())
return true;
if(this.STATUS_NEW != this.getEntityState() ||
this.STATUS_INITIALIZED != this.getEntityState())
return false;
}
return super.isAttributeUpdateable(index);
}