IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JSF Java Discussion :

[PrimeFaces] Gestion de confirmation avec message dynamique


Sujet :

JSF Java

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Creuse (Limousin)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5
    Points : 6
    Points
    6
    Par défaut [PrimeFaces] Gestion de confirmation avec message dynamique
    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.

  2. #2
    Membre averti Avatar de Njörd
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 190
    Points : 390
    Points
    390
    Par défaut
    Bonjour la vie bachiri,

    Il me semble que lorsque que l'on fais update=":NomDuForm" c'est que l'on demande à primefaces de mettre à jour le formulaire.

    Du coup, ça explique ton comportement : tu clique, la dialog box s'ouvre, la page se recharge.

    Tu as essayé en faisant comme le showcase avec juste : update=":messages" ? Normalement, ça t'affichera le facesMessages de ton bean et mettra à jour ton tableau.

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Creuse (Limousin)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    Bonjour Njörd,
    d'abord je te remercie Njörd pour la réponse,
    mais le code "update=:messages" doit actualiser un composant intitulé "messages" dans la même page !! mais pour ce cas j'ai pas composant qui porte cet attribut "messages", est ce que cet attribut est chargé par défaut par Primefaces ?!!

  4. #4
    Membre averti Avatar de Njörd
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 190
    Points : 390
    Points
    390
    Par défaut
    Bonjour la vie bachiri,

    Ce n'est pas le nom d'un composant mais le nom d'un identifiant html.
    Dans ton code tu as ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <p:growl id="messages" showDetail="true"/>
    Le composant p:growl => Primefaces

Discussions similaires

  1. fonction fopen avec message de confirmation
    Par cesar33 dans le forum Langage
    Réponses: 1
    Dernier message: 22/04/2013, 07h14
  2. [MySQL] email : Corps du message dynamique avec href
    Par fazpedro dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 11/04/2012, 13h30
  3. Message confirmation avec input
    Par albedo0 dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 09/06/2010, 11h13
  4. Réponses: 3
    Dernier message: 24/04/2008, 12h30
  5. Réponses: 8
    Dernier message: 22/06/2007, 18h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo