View looks like this:
form
(can have only one checkbox selected)
----------------------------------------
checkbox_1
(on value change clears checkbox_1
and checkbox_2
values in the backing bean and updates form**. new
checkbox_1value is set after all checkbox values are cleared)
row_checkbox_1(rendered only if
checkbox_1` is checked)
checkbox_2
(on value change clears checkbox_1
and checkbox_2
values in the backing bean and updates form**. new
checkbox_2value is set after all checkbox values are cleared)
row_checkbox_2(rendered only if
checkbox_2` is checked)
saveButton
(on click updates form
and a separate messages
component)
---------------------------------
Lets state checkbox_1
is selected meaning that row_checkbox_1
components is also visible. Also there are errors in row_checkbox_1
fields.
After saveButton
is pressed the errors are displayed.
Problem: pressing/checking checkbox_2
updates backing bean - checkbox_1
value field in the backing bean gets set to false (debugged and verified by looking at getter) and checkbox_2
value field is set to true. However view does not update correctly since checkbox_1
is rendered as checked while row_checkbox_1
is not rendered at all. Remember row_checkbox_1
is rendered only if checkbox_1
is true. checkbox_2
is rendered and checked as it should be and row_checkbox_2
fields are visible as it should be.
I'm doing all this in PrimeFaces 6.0