Bonjour,

J'ai un problème avec la gestion d'une fenêtre de confirmation.

J'ai chargé une liste avec des données et dans celle-ci, pour chaque ligne il y a une commande de suppression. Avant d'effectuer cette action de suppression, il y a une confirmation qui s'affiche, laquelle doit contenir un message + la ligne à supprimer. J'utilise pour cela un composant PrimeFaces appelé ConfirmDialog, qui affiche un petit message pour la confirmation.

Le problème est que je n'arrive pas à afficher ce dernier avec la ligne à supprimer. C'est-à-dire que lorsque je mets un attribut "update" pour le bouton, la confirmation s'affiche et disparait immédiatement.

Voici mon code :
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
<h:form id="salleForm">
        <!-- La liste des salles -->
        <h:outputText value="Salles : " />
        <p:growl id="messages" showDetail="true"/>  
        <p:dataTable id="salles" var="salle" value="#{salleMB.salleList}" style="width: 10%"
        emptyMessage="#{msg.ligneVide}" paginator="true" rows="10"
        paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
        rowsPerPageTemplate="5,10,15">
 
            <p:ajax event="rowEdit" listener="" update=":salleForm:messages" />  
            <p:ajax event="rowEditCancel" listener="" update=":salleForm:messages" />  
 
            <p:column>
                <f:facet name="header">
                    <h:outputText value="ID Salle" />
                </f:facet>
                <h:outputText value="#{salle.idSalle}" />
            </p:column>
            <p:column headerText="Libelle">
                <p:cellEditor>  
                <f:facet name="output">  
                    <h:outputText value="#{salle.libelleSalle}" />  
                </f:facet>  
                <f:facet name="input">  
                    <p:inputText value="#{salle.libelleSalle}" style="width:100%"/>  
                </f:facet>  
            </p:cellEditor>  
            </p:column>
            <p:column>
                <p:commandButton icon="ui-icon-trash" onclick="confirmation.show();" >
                    <f:setPropertyActionListener target="#{salleMB.salle}" value="#{salle}" />
                </p:commandButton>
<p:confirmDialog id="confirmDialog"  message="Voulez vous vraiment supprimez cette 'Salle' ?"
            header="Suppression..." severity="alert" widgetVar="confirmation">             
        <p:commandButton id="confirm" value="Confirmer" actionListener="#{salleMB.deleteSalle}"   
             oncomplete="closeDialogIfSucess(xhr, status, args, confirmation 'confirmDialog')" 
             update=":salleForm" />  
        <p:commandButton id="decline" value="Annuler" onclick="confirmation.hide()" type="button" />   
    </p:confirmDialog>
            </p:column>
            <p:column headerText="Options" style="width:50px">  
                <p:rowEditor />  
            </p:column> 
        </p:dataTable>
</h:form>
Quelqu'un saurait-il m'indiquer comment résoudre ce problème ?

Merci d'avance pour votre aide.