[BINDING] Interaction entre les composants?
Hello,
J'ai lu le tutorial d'introduction au JSF disponible ici
Dans le chapitre 8, il y a une partie que je n'ai pas bien comprise.
Le code se trouve exactement au paragraphe 8.2 lorsque l'on ajoute le
Code:
1 2 3
| <html:column>
<html:selectBooleanCheckbox binding="#{bank.checkbox}"/>
</html:column> |
On ajoute au ManagedBean Bank un UIComponent représentant la nouvelle checkBox et on ajoute la méthode suivante :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
public void removeSelectedCustomers(){
int size = this.dataTable.getRowCount();
List selectedCustomers = new ArrayList();
for(int i=0; i < size; i++){
this.dataTable.setRowIndex(i); (1)
if(this.checkbox.isSelected()){ (2)
selectedCustomers.add(this.customers.get(i));
}
}
this.customers.removeAll(selectedCustomers);
} |
A la ligne (1), on positionne la ligne courante dans le datatable (là pas de soucis)
A la ligne (2), on verifie que cette ligne est cochée, et c'est la que je ne comprend pas le mécanisme. En ce qui concerne le composant représentant la checkbox il n'y a pas d'utilisation de l'index de ligne.
Comment JSF fait le lien entre la ligne datatable et le checkBox?
Merci d'avance pour votre aide! :D