У меня есть список объектов, которые я отображаю в расширенной расширенной таблице данных
Я хочу зарегистрировать два события изменения в этой таблице данных:
1 - первое событие при выборе строки
2 - когда я проверяю / отменяю столбец, содержащий флажок
МОЙ КОД
1 - первое зарегистрированное событие в строке:
<a4j:ajax event="selectionchange" execute="@this" immediate="true" render=":parent1:child1" listener="#{controleur.selectionListener}"/>
2 - второе зарегистрированное событие в столбце флажка:
<h:selectBooleanCheckbox id="selectItem">
<a4j:ajax event="change" execute="@this" immediate="true" render="idCompopent1" listener="#controleur.selectItemChangeListener(arg0,arg1,arg2)}" />
</h:selectBooleanCheckbox>
Моя фасоль:
// for the row selection
public void selectionListener(final AjaxBehaviorEvent event) {
final AbstractExtendedDataTable dataTable = (AbstractExtendedDataTable) event
.getComponent();
final Object originalKey = dataTable.getRowKey();
some code ...
dataTable.setRowKey(originalKey);
}
//for the checkbox
public void selectItemChangeListener(
final arg0,
final arg1, arg2) {
some code ...
}
Кажется, что событие changeSelection (row) отключает изменение (флажок), хотя это два разных метода.