Bonjour
Je suis entrain de développer une application web pour mon PFE,
et j'ai rencontré ce probleme:
J'ai faits un richdataTable, et je veux editer la ligne sélectionné, mais ça marche pas.
ça me faits pas la mise à jour et ne me rends aucune erreur
voici mon code:
Dans mon panel d'edit, je reçoit bien mes données relatifs à la ligne sélectionnée:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <rich:dataTable value="#{jortControl.listJortss}" var="list"> //liste de mes colonnes de données // puis la colonne contenant mon bouton d'Edit <rich:column> <a4j:commandButton image="/img/edit.png" ajaxSingle="true" oncomplete="#{rich:component('monPanelEdit')}.show();" reRender="contactInfo"> <f:setPropertyActionListener value="#{list}" target="#{monControl.selectedContact}" /> </a4j:commandButton> </rich:column> </rich:dataTable>
monControler.java:
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 <rich:modalPanel id="monPanelEdit"> <f:facet name="header"> <h:outputText value="Edition contact"/> </f:facet> <rich:graphValidator> <h:panelGrid id="contactInfo" columns="2"> <h:outputText id="numero" value="Numero" /> <h:inputText value="#{monControl.selectedContact.num}" /> <h:outputText id="date" value="Date naissance" /> <rich:calendar value="#{monControl.selectedContact.dateNai}" required="true" enableManualInput="false" locale="fr-Fr" datePattern="dd/MM/yyyy" showApplyButton="true" popup="true"> </rich:calendar> <h:outputText id="prenom" value="prenom" /> <h:inputText value="#{monControl.selectedContact.prenom}" /> </h:panelGrid> </rich:graphValidator> <br><br> <rich:toolBar> <rich:toolBarGroup> <a4j:commandLink onclick="#{rich:component('monPanelEdit')}.hide();return false"> Fermer </a4j:commandLink> <a4j:commandLink reRender="contactInfo" action="#{monControl.updateContact}" oncomplete="#{rich:component('monPanelEdit')}.hide();return false" > Appliquer </a4j:commandLink> </rich:toolBarGroup> </rich:toolBar> </rich:modalPanel>
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 ContactDAORemote contact=new ContactDAORemote(); public void updateContact(){ try { context = new InitialContext(); contact = (ContactDAORemote) context.lookup("ContactDAO/remote"); contact.updateContact(getSelectedContact()); } catch (NamingException e) { e.printStackTrace(); } } Mon contactDAO: public Contact updateCort(final Contact contact) { em.merge(contact); return contact; }
Partager