The way the component is designed "Edits are done in a safe 'edit space' and the direct objects are untouched until the data is saved". This means that the JSF lifecycle does not execute until the save button is pressed.
The way to make this change with the existing component is to implement the rowUpdated method in the class that implements IEditableTableEventListener:
In this example tested in the composite-comps-showcase, if we want the selection of "Montreal" in one selectOneMenu to change the value of another selectOneMenu, this is how it would be done:
public void rowUpdated(Object oldBean, Object newBean) {
Employee newEmp = (Employee)newBean;
if(newEmp.getSubDepartmentName().equals("Montreal"))
{
newEmp.setDepartmentName("Western");
}
}
The way the component is designed "Edits are done in a safe 'edit space' and the direct objects are untouched until the data is saved". This means that the JSF lifecycle does not execute until the save button is pressed.
The way to make this change with the existing component is to implement the rowUpdated method in the class that implements IEditableTableEventListener:
In this example tested in the composite-comps-showcase, if we want the selection of "Montreal" in one selectOneMenu to change the value of another selectOneMenu, this is how it would be done:
public void rowUpdated(Object oldBean, Object newBean) {
{ newEmp.setDepartmentName("Western"); }Employee newEmp = (Employee)newBean;
if(newEmp.getSubDepartmentName().equals("Montreal"))
}