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

Hibernate Java Discussion :

probleme avec le select one menu


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    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 probleme avec le select one menu
    Salut les jeunes

    Je travaille sur une application web avec jsf et hibernate et la ça fait plus q'une semaine que mon problème persiste avec les select one menu puisque je ne suis pas trop hibernate , je vais vous expliquer de quoi s'agit il , j'ai une classe personnel avec deux clés étrangères agence et statut, tout simplement je veux faire l'insertion du personnel à travers une formulaire qui contient deux select one menu , le premier pour les agences et le deuxième pour les statuts , mon probleme c'est que je n'arrive plus à récupérer les valeurs de ces combo pour insérer le personnel sur la base de données . En fait Quand je clique sur le bouton ajouter le presonnel s'insere mais les champs de agence et statut reste vides . veuillez m'aider s'il vous plait à résoudre ce problème . si vous aurez besoin d'une partie du code qui peut vous aider à detecter le probleme je suis la


    voici le select one menu qui affiche la liste des agences
    NB : showA = AgenceController c'est la ou je fais appel à la méthode qui liste les agences
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <h:outputText value="Agence"/>
         <h:selectOneMenu    id="SA" value="#{showA.agence.numAgence}"   style="width:200px"> 
             <f:selectItem itemLabel="--sélectionner une agence--" noSelectionOption="true" />
             <f:selectItems value="#{showA.agences}" var ="ag"  itemValue="#{ag.numAgence}" itemLabel="#{ag.nomAgence}"/>   
     
                     </h:selectOneMenu>
    la méthode create de DAO pour ajouter un personnel

    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
     
      /* Ajouter un personnel */
     
     
        public boolean create(Personnel p){
            boolean flag ; 
            Session s = HibernateUtil.getSessionFactory().getCurrentSession();    
            try{
                s.beginTransaction();      
                s.save(p);
                s.getTransaction().commit();
                flag= true;
            }catch(Exception e){
                flag= false;
                s.getTransaction().rollback();
            }
            return flag;
        }

    la méthode insert sur le controller

    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
     
     
     public String  insert () {
     
             personnelDAO dao = new personnelDAO() ;
             String msg ; 
     
             if(dao.create(p)){
                 msg="personnel enregistré correctement";
                 FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, msg, null);
                 FacesContext.getCurrentInstance().addMessage(null, message); 
             }else {
     
                 msg="L'enregistrement a echoué";
                 FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR, msg, null);
                 FacesContext.getCurrentInstance().addMessage(null, message); 
             }
     
             return "succes" ;
     
        }

    voici l'entité personnel :
    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
     
    @Entity
    @Table(name="personnel"
        ,catalog="derichebourg"
    )
    public class Personnel  implements java.io.Serializable {
     
     
         private String cin;
         private Statut statut;
         private Agence agence;
         private String nomPersonnel;
         private String prenom;
         private String numTelephone;
         private String adresse;
         private String fonction;
         private String login;
         private String motDePasse;
         private String mail;
         private Set<Conducteur> conducteurs = new HashSet<Conducteur>(0);
         private Set<Responsableconducteur> responsableconducteurs = new HashSet<Responsableconducteur>(0);
     
        public Personnel() {
        }
     
    @ManyToOne(fetch=FetchType.EAGER)
        @JoinColumn(name="statut", nullable=true)
        public Statut getStatut() {
            return this.statut;
        }
     
        public void setStatut(Statut statut) {
            this.statut = statut;
        }
    @ManyToOne(fetch=FetchType.EAGER)
        @JoinColumn(name="numAgence", nullable=true)
        public Agence getAgence() {
            return this.agence;
        }

    j'ai essayé d'insérer le personnel statiquement comme ceci et ça marche nikel

    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
     
     
     
          /*
        public static void main(String[] args) {
             
         Agence agence = new Agence();
         agence.setNumAgence(5); 
         
        
         
         Statut statut = new Statut();
         statut.setNumStatut(1);
         
         
         Personnel p = new Personnel();
         p.setCin("Mohamed ali "); 
         p.setAgence(agence); 
         p.setStatut(statut); 
         
             personnelDAO dao = new personnelDAO() ;
             dao.create(p);  
             System.out.print(agence.getNomAgence()); 
        
        }
       */

  2. #2
    Membre Expert Avatar de jeffray03
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2008
    Messages
    1 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 501
    Par défaut
    il te manque:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    @id
    private String cin;
    eric

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

Discussions similaires

  1. Probleme avec select one Menu
    Par jalalos dans le forum JSF
    Réponses: 5
    Dernier message: 25/04/2007, 10h54
  2. probleme avec new->select a wizard
    Par thesorrow dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 12/03/2007, 09h00
  3. [My SQL]probleme avec insert select
    Par jmjmjm dans le forum Langage SQL
    Réponses: 2
    Dernier message: 27/01/2007, 11h24
  4. problem avec un select sous IE?
    Par Death83 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 24/12/2005, 14h36
  5. probleme avec un SELECT
    Par Jean Fi dans le forum Débuter
    Réponses: 5
    Dernier message: 29/11/2005, 21h55

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