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
    Points : 1
    Points
    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 actif
    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
    Points : 242
    Points
    242
    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 régulier
    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
    Points : 105
    Points
    105
    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 du Club
    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
    Points : 57
    Points
    57
    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