Bonjour à tous,
je voudrais savoir s'il était possible d'accéder à la valeur de mon objet avant que celui-ci ai été modifié dans une dataTable. Je m'explique un peu mieux. J'ai une dataTable qui représente une liste de Personne, possédant uniquement 3 colonnes ; le nom, le prénom et une icone pour la modification (rowEditor).
Lorsque je clique sur le mode édition, que je modifie différentes valeurs et que je valide j'appelle la fontion onEdit :
En fait j'ai vraiment besoin de connaitre l'ancienne valeur de mon objet Personne. J'ai cru voir que cela été possible avec un CellEdit. Mais faire ce traitement avec un cellEdit ne me parait pas une bonne chose. Je préférerais réaliser un seul update par ligne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 private List<Personne> maList; public void onEdit(RowEditEvent event) { // recuperation du nouvel objet Personne pnew = (Personne) event.getObject(); // recuperation de l'ancien objet Personne pold; // je ne sais pas comment // traitement maList.remove(pold); maList.add(pnew); // modification dans la base }
Si cela n'est pas possible : peut-on récupérer l'ensemble des objets enregistrés dans la dataTable ? Si je pose cette question c'est que je l'initialise avec ma List<Personne>, et si je pouvais récupérer dans la fonction onEdit la nouvelle liste, je pourrais comparer les valeurs de mes objets.
Si vous ne comprenez pas ce que je dit, dites le moi et je tenterais de reformuler ^^
Merci
Partager