Bonjour,

J'ai développé une page où je souhaite modifier une valeur d'une colonne "résultat" en la sélectionnant. En pointant sur la colonne j'entre la nouvelle valeur après lorsque je sors de la colonne, la console effectue une requête update mais sans changement au niveau tableau et au niveau de la base.

Ma page est la suivante :

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
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
 
 
<p:dataTable var="matchs" reflow="true" value="#{matchsCtr.list}" emptyMessage="Aucun matchs n'est disponible dans la base"
						editable="true" editMode="cell">
 
 
  <p:growl id="msgssss"></p:growl>	
 
 <p:ajax event="cellEdit" listener="#{matchsCtr.onCellEdit}" update="msgssss" />
 
 
    <p:columnGroup type="header">
 
            <p:row>
                <p:column rowspan="2" headerText="Joueur 1">
 
                </p:column>
 
                <p:column rowspan="2" headerText="Joueur 2">
 
                </p:column>
 
 
 
 
                <p:column colspan="1" headerText="avant match" />
 
                <p:column rowspan="2" headerText="Résultat">
 
                </p:column>
 
 
            </p:row>
 
        </p:columnGroup>
 
 
    <p:column>
            <h:outputText value="#{matchs.joueursByJoueurun.fullname}" />
        </p:column>
 
 
           <p:column>
            <h:outputText value="#{matchs.joueursByJoueurdeux.fullname}" />
        </p:column>
 
 
           <p:column>
            <h:outputText value="#{matchs.avantmouvement}" />
        </p:column>
 
 
 
 
         <p:column>
            <p:cellEditor>
               <f:facet name="output"><h:outputText value="#{matchs.resultat}" /></f:facet>
               <f:facet name="input"><p:inputText  value="#{matchs.resultat}" style="width:100%"/></f:facet>
           </p:cellEditor>
        </p:column>
 
</p:dataTable>
 
</h:form>
et ma méthode est :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
public void onCellEdit(CellEditEvent event) {
 
 
	       DataTable dataTable = (DataTable) event.getSource();
	       Matchs matchs = (Matchs) dataTable.getRowData();
 
	       System.out.println(matchs.getCoteavantbet());
	       matchsBuss.modifierMatchs(matchs);
	       System.out.println(matchs.getCoteavantbet());
	   }
Ici les system.out me sortent la l'ancienne valeur de cette colonne.

Merci