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 :

CommandButton qui ne déclanche pas l'action


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Développeur Java
    Inscrit en
    Septembre 2011
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2011
    Messages : 33
    Par défaut CommandButton qui ne déclanche pas l'action
    salut, je suis en train de faire une formulaire d'insertion à la base de données avec Hibernate , primefaces jsf et postgres comme un SGBD , le problem c'est qu'apres le remplissage du formulaire , je click sur le boutton save , mais rien ne sera enregistrer dans la base , meme aucune exception s 'affichera, j'ai fais une test dans une main et ça marchera bien !!!!
    donc le problem c'est dans le boutton il ne déclanche pas l'action.
    voila ma page xhtml

    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
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
     
     
    <?xml version='1.0' encoding='UTF-8' ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:p="http://primefaces.prime.com.tr/ui"
          xmlns:ui="http://java.sun.com/jsf/facelets"
          xmlns:f="http://java.sun.com/jsf/core"
          xmlns:cc="http://java.sun.com/jsf/composite">
     
        <body>
     
            <ui:composition template="./../WEB-INF/templates/template.xhtml">
     
                <ui:define name="content">
                    <p:layoutUnit id="messages" position="center" scrollable="true" style=" font-size: small; padding: 5px"  >
                        <h:panelGrid columns="1" width="100%" >
     
     
                            <h:form style=" font-size: small">
     
     
     
                                <h1  class="title ui-widget-header ui-corner-all" style="font-weight: lighter;font-size: 17px;color: #12345" ><p:graphicImage url="/images/Profile.png"/>Nouveau Distributeur</h1>
                            </h:form>
     
     
                            <h:form>
                                <h:panelGrid columns="7" >                                
                                      <p:fieldset style="background-color: skyblue">
                                        <f:facet name="legend">
                                            <p:graphicImage value="/images/Profile.png"/> Identité
                                        </f:facet>
     
                                        <h:panelGrid id="display1" columns="2" cellpadding="4">
     
                                            <h:outputText value="Nom:" />
     
                                            <p:inputText value="#{DistributeurBean.identite.nom}" 
                                                        />  
     
     
                                            <h:outputText value="Prenom:" />
     
                                            <p:inputText value="#{DistributeurBean.identite.prenom}"  
                                                         />  
     
     
                                            <h:outputText value="N°CIN:" />
     
                                            <p:inputText value="#{DistributeurBean.identite.NCin}"  
                                                         />  
     
     
                                            <h:outputText value="Date CIN:" />
     
                                            <p:inputText  value="#{DistributeurBean.identite.dateCin}"/>  
     
                                            <h:outputText value="Lieu CIN:" />
                                            <p:inputText value="#{DistributeurBean.identite.lieuCin}"/>
                                            <br></br>
     
     
                                        </h:panelGrid>
                                          <p:commandButton type="reset" value="Nouveau" title="Nouveau" image="ui-icon-document"/>
                                          <p:commandButton  value="Save" ajax="false" action="#{DistributeurBean.save}" title="Save" />
     
     
                                    </p:fieldset> 
                                    <p:spacer height="50px"/> 
     
                                    <p:spacer height="50px"/>  
     
     
                                    <p:spacer height="50px"/>                        
     
                                </h:panelGrid> 
                            </h:form>
                        </h:panelGrid>
                    </p:layoutUnit>
     
     
                </ui:define>
     
            </ui:composition>
     
        </body>
    </html>
    et voila mon ManagedBean
    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
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
     
    package managedBean;
    import dao.*;
    import daoImpl.*;
    import entity.*;
     
    import java.util.List;
    import java.io.Serializable;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    import javax.faces.application.FacesMessage;
    import javax.faces.bean.ManagedBean;
    import javax.faces.context.ExternalContext;
    import javax.faces.context.FacesContext;
    import org.primefaces.event.SelectEvent;
     
    @ManagedBean(name = "DistributeurBean")
    public class DistributeurBean extends MessageBean {
     
        private Distributeur Distributeur;
        private Distributeur selectedDistributeur;
        private Identite identite=new Identite();
     
        public Identite getIdentite() {
            return identite;
        }
     
        public void setIdentite(Identite identite) {
            this.identite = identite;
        }
     
     
        public Distributeur getSelectedDistributeur() {
            return selectedDistributeur;
        }
     
        public void setSelectedDistributeur(Distributeur selectedDistributeur) {
            this.selectedDistributeur = selectedDistributeur;
        }
        private List<Distributeur> Distributeurs_selected;
     
        public List<Distributeur> getDistributeurs() {
            return new DistributeurDAOImpl().getDistributeurs();
        }
     
        public void setDistributeurs(List<Distributeur> Distributeurs) {
            this.Distributeurs_selected = Distributeurs;
        }
     
        public DistributeurBean() {
            // TODO Auto-generated constructor stub
            super();
     
            Distributeur = new Distributeur();
     
            selectedDistributeur = new Distributeur();
            Distributeurs_selected = new DistributeurDAOImpl().getDistributeurs();
     
        }
     
        public Distributeur getDistributeur() {
            return Distributeur;
        }
     
        public void setDistributeur(Distributeur Distributeur) {
            this.Distributeur = Distributeur;
        }
     
        public void save() {
            System.out.println("11111111111111");
     
            try {
                new IdentieDAOImpl().saveIdentite(identite);
                System.out.println("cc");
                FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Succés ajout Distributeur", mess_insert_true));
            } catch (Exception ex) {
                FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "Erreur d'ajout Distributeur", mess_op_false));
            }
     
     
        }
    }

  2. #2
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 191
    Par défaut
    est ce que l'affichage dans le console ça marche tout d'abord ? :
    System.out.println("11111111111111");
    System.out.println("cc");

  3. #3
    Membre averti
    Homme Profil pro
    Développeur Java
    Inscrit en
    Septembre 2011
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2011
    Messages : 33
    Par défaut
    non c'est là le probleme !!!! aucun mesaage s'affiche

  4. #4
    Membre éprouvé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2004
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2004
    Messages : 102
    Par défaut
    au lieu de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    action="#{DistributeurBean.save}"
    essaie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    action="#{distributeurBean.save}"
    Avec une minuscule à distributeurBean

  5. #5
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Par défaut
    Citation Envoyé par hedes Voir le message
    au lieu de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    action="#{DistributeurBean.save}"
    essaie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    action="#{distributeurBean.save}"
    Avec une minuscule à distributeurBean
    Non le souci n'est pas là, il faut bien lire son post, puisqu'il a fait cette déclaration dans son managedBean
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    @ManagedBean(name = "DistributeurBean")
    En revanche tes balises h:form tu les utilises un peu abusivment je trouve , t'en as déclaré partout dans ta page, pourtant un seul suffirait, je ne dis pas que le souci vienne forcément de là mais essaie :
    1- De remplacer DistributeurBean par distributeurBean, dans l'entête de ton managedBean
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    @ManagedBean(name = "distributeurBean")
    public class DistributeurBean extends MessageBean
    et dans l'appel dans ta page xhtml
    2- Tu vires tous les h:form internes et tu mets un seul en lieu et place de la balise body.
    Et redis nous ce que ca donne.

  6. #6
    Membre averti
    Homme Profil pro
    Développeur Java
    Inscrit en
    Septembre 2011
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2011
    Messages : 33
    Par défaut
    Citation Envoyé par DevServlet Voir le message
    Non le souci n'est pas là, il faut bien lire son post, puisqu'il a fait cette déclaration dans son managedBean
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    @ManagedBean(name = "DistributeurBean")
    En revanche tes balises h:form tu les utilises un peu abusivment je trouve , t'en as déclaré partout dans ta page, pourtant un seul suffirait, je ne dis pas que le souci vienne forcément de là mais essaie :
    1- De remplacer DistributeurBean par distributeurBean, dans l'entête de ton managedBean
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    @ManagedBean(name = "distributeurBean")
    public class DistributeurBean extends MessageBean
    et dans l'appel dans ta page xhtml
    2- Tu vires tous les h:form internes et tu mets un seul en lieu et place de la balise body.
    Et redis nous ce que ca donne.
    voila c'est résolu en suivant ce que t'as cité DevServlet ,Merci.
    En plus de tout ça j'ai deja déclaré le Managed Bean deux fois une par l'annotation et l'autre dans le fichier de Configuration faces-config , j'ai enlevé celle de fichier faces-config et ça marchera.


    Merci pour tous ,
    Avant d'oublier si vous pouvez m'aider à: comment passer les valeurs d'un bean d'une page a une autre, par exmple dans mon cas en cliquant sur un élement dans un datatable , on passera dans une autre page pour le modifier

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. commandButton qui ne fonctionne pas
    Par opium1er dans le forum JSF
    Réponses: 1
    Dernier message: 15/07/2013, 18h24
  2. Fonction javascript qui n'effectue pas les actions demandées
    Par Joe-La-Boule dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 27/06/2008, 15h27
  3. Boutons qui n'exécutent pas l'action
    Par M@t2802 dans le forum Langage
    Réponses: 2
    Dernier message: 08/08/2007, 11h05
  4. commandButton qui n'apelle pas ma methode
    Par Skipy_lz dans le forum JSF
    Réponses: 1
    Dernier message: 04/04/2007, 10h06
  5. onChange pas déclanché sur une action javascript ?
    Par Oluha dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 27/06/2005, 16h32

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