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 :

Problème insertion dans la B.D, formulaire JSF + Hibernate


Sujet :

JSF Java

  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2013
    Messages : 1
    Par défaut Problème insertion dans la B.D, formulaire JSF + Hibernate
    Bonjour Mon projet est fait de JSF(Primefaces) + Hibernate(Reverse à partir de la B.D).
    J'ai une table employé qui contient 2 clé étrangères( teamleaderId + formateurId). Dans le formulaire d'ajout d'un nouveau employé j'ai réussi à afficher dans une SelectOneMEnu teamleaderId + formateurId sous forme de nom afin de récupérer leurs ID
    Voir l'image
    Mais lors de l'enregistrement rien ne ce passe , quelque svp peut m'aider j'ai passé 4 jours à essayer de résoudre ce problème.
    Merci

    JSF :

    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
    <p:dialog widgetVar="dlgEmployer" resizable="true"  height="450" width="450" header="Ajout Employé" position="center">
     
                            <p:panelGrid columns="2" style="margin-bottom:10px" >
                                <h:outputText value="Adresse"/>
                                <p:inputText id="adresse3" value="#{employerController.employers.adresse}" required="true" requiredMessage="Le champ adresse est obligatoire"/>
     
                                <h:outputText value="Cin"/>
                                <p:inputText id="cin3" value="#{employerController.employers.cin}" required="true" requiredMessage="Le champ nom cin est obligatoire"/>
     
                                 <h:outputText value="Compte"/>
                                 <p:selectOneMenu value="#{employerController.employers.compte}">  
                                     <f:selectItem itemLabel="Select One" itemValue="" />  
                                     <f:selectItem itemLabel="AFPA" itemValue="1" />  
                                     <f:selectItem itemLabel="GDF Suez" itemValue="2" />  
                                     <f:selectItem itemLabel="Eletrabel" itemValue="3" />  
                                 </p:selectOneMenu>  
     
     
                                <h:outputText value="Email"/>
                                <p:inputText id="email3" value="#{employerController.employers.email}" required="true" requiredMessage="Le champ email categorie est obligatoire"/>
     
     
                                <h:outputText value="Nom"/>
                                <p:inputText id="nom3" value="#{employerController.employers.nom}" required="true" requiredMessage="Le champ nom est obligatoire"/>
     
                                <h:outputText value="Prenom"/>
                                <p:inputText id="prenom3" value="#{employerController.employers.prenom}" required="true" requiredMessage="Le champ prenom est obligatoire"/>
     
                                <h:outputText value="Pseudo"/>
                                <p:inputText id="pseudo3" value="#{employerController.employers.pseudo}" required="true" requiredMessage="Le champ pseudo est obligatoire"/>
     
                                <h:outputText value="Sexe"/>
                                <p:selectOneRadio id="sexe5" value="#{employerController.employers.sexe}" required="true" requiredMessage="Le champ sexe est obligatoire">  
                                    <f:selectItem itemLabel="Homme" itemValue="Homme" />  
                                    <f:selectItem itemLabel="Femme" itemValue="Femme" />  
                                </p:selectOneRadio> 
     
     
     
                                <h:outputText value="Telephone"/>
                                <p:inputText id="telephone3" required="true" value="#{employerController.employers.telephone}"/> 
     
                                <h:outputText value="Formateur"/>
                                <h:selectOneMenu id="Formateurcombo" value="#{employerController.employers.formateur.formateurId}"> 
                                    <f:selectItems value="#{employerController.listformateurname}" var="s" itemValue="#{s.formateurId}" itemLabel="#{s.nom}" />
                                </h:selectOneMenu>
     
                                <h:outputText value="Team leader"/>
                                <h:selectOneMenu id="selectListTeamLeader" value="#{employerController.employers.teamleader.teamleaderId}">
                                    <f:selectItems value="#{employerController.listteamleadername}" var="s" itemValue="#{s.teamleaderId}" itemLabel="#{s.nom}" />
     
                                </h:selectOneMenu>
     
                                <p:commandButton value="enregistrer" id="eng1" actionListener="#{employerController.ajouter(actionEvent)}" update="dataemployer" oncomplete="dlgEmployer.hide()"/>
     
                            </p:panelGrid> 
                            <pe:keyFilter for="telephone3" mask="num"/> 
                            <pe:keyFilter for="email3" regEx="/[a-z0-9_\.\-@]/i"/>  
     
                        </p:dialog>
    EmployerController :

    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
    @ManagedBean
    @SessionScoped
    @ViewScoped
     
    public class EmployerController {
     
        private Employer employer;
     
        private DataModel listEmployers;
        private DataModel listformateurname;
        private DataModel listteamleadername;
        private Employer selectedEmployer;  
        private Employer[] selectedEmployers;
        private List<Employer> filteredEmployers;
     
     
     
     
        public DataModel getListteamleadername() {
            List<Teamleader> lista1 = new TeamleaderDao().list();
     
            listteamleadername = new  ListDataModel(lista1);
            return listteamleadername;
        }
     
        public void setListteamleadername(DataModel listteamleadername) {
            this.listteamleadername = listteamleadername;
        }
     
     
     
     
        public DataModel getListformateurname() {
     
     
            List<Formateur> lista = new FormateurDao().list();
            listformateurname = new  ListDataModel(lista);
            return listformateurname;
     
        }
     
        public void setListformateurname(DataModel listformateurname) {
            this.listformateurname = listformateurname;
        }
     
    public void ajouter(ActionEvent actionEvent){
            InterfaceEmployer dao = new EmployerDao();
            dao.enregistrer(employer);
        }
    Classe model Employer :

    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
     
    public class Employer  implements java.io.Serializable {
     
     
         private Integer employerId;
         private Teamleader teamleader;
         private Formateur formateur;
         private String adresse;
         private String cin;
         private String compte;
         private String email;
         private String nom;
         private String prenom;
         private String pseudo;
         private String sexe;
         private String telephone;
         private Set<Inscription> inscriptions = new HashSet<Inscription>(0);
    // Constructeur + get/set
    Employer Dao :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    public class EmployerDao implements InterfaceEmployer{
     
        @Override
        public void enregistrer(Employer employer) {
            Session ss= HibernateUtil.getSessionFactory().getCurrentSession();
            ss.beginTransaction();
            ss.save(employer);
     
            ss.beginTransaction().commit();
        }

  2. #2
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2011
    Messages
    196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2011
    Messages : 196
    Par défaut
    Pourrais-tu lancer ton projet en mode debug et mettre un point d'arrêt dans ta méthode ajouter, afin de voir à quelle ligne cela bloque.

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2009
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2009
    Messages : 153
    Par défaut
    slt! si tu n'a aucunne erreur, c'est que le problème vient surement de ton formulaire, qui n'est pas soumis en raison de contrainte non respecté (valeur required à null) ou aussi, j'ai remarqué cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <f:selectItem itemLabel="Select One" itemValue="" />
    . je te suggère de l'enlever ou de remplacer par
    #{null}

  4. #4
    Membre confirmé
    Homme Profil pro
    éléve ingénieur
    Inscrit en
    Mai 2015
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : éléve ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2015
    Messages : 75
    Par défaut
    Salam


    j'ai le même problème que toi de l'insertion , En fait on a la même architecture et les mêmes technologies . sinon comment tu as pu résoudre ce problème

Discussions similaires

  1. [SQL] Problème insertion dans Base SQL après saisie d'un formulaire
    Par Yagami_Raito dans le forum PHP & Base de données
    Réponses: 16
    Dernier message: 15/05/2007, 13h44
  2. [Debutant]Problème Insertion dans une Struct
    Par sniperseb dans le forum Débuter
    Réponses: 13
    Dernier message: 17/12/2006, 03h57
  3. [Debutant]Problème Insertion dans une Struct
    Par sniperseb dans le forum C
    Réponses: 5
    Dernier message: 14/12/2006, 17h24
  4. [VB.net] Problème insertion dans table
    Par fab2503 dans le forum Windows Forms
    Réponses: 10
    Dernier message: 09/08/2006, 22h21
  5. [ZEOSLIB] Problème Insertion dans une table
    Par moscovisci dans le forum Bases de données
    Réponses: 1
    Dernier message: 09/06/2005, 12h05

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