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 :

Populer une liste JSF à partir d'un héritage EJB


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2010
    Messages : 65
    Par défaut Populer une liste JSF à partir d'un héritage EJB
    L'objectif est de récupérer une liste d'étudiants (qui hérite de personne) dans un contrôleur JSF en faisant un appel vers des EJB.

    J'ai pas mal cherché avec google et sur ce forum sans succès, pourtant mon problème me semblais classique, j'ai donc débugué à fond mais voilà, je pige pas ce qui m'arrive :

    Il y a deux classes : Personne et Etudiant
    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
    @Entity
    @Table(name="PERSONNE")
    @Inheritance(strategy=InheritanceType.JOINED)
    public class Personne implements Serializable {
     
      private static final long serialVersionUID = -1323111287206189095L;
     
      @Id
      @GeneratedValue(strategy=GenerationType.AUTO)
      @Column(name = "id", unique = true, nullable = false)
    	private Long id;
    	private String nom;
     
    	protected Personne() {
     
    	}
     
    	protected Long getId() {
    		return id;
    	}
     
    	protected void setId(Long id) {
    		this.id = id;
    	}
     
    	protected String getNom() {
    		return nom;
    	}
     
    	protected void setNom(String nom) {
    		this.nom = nom;
    	}
     
    }
    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
    @Entity
    @Table(name="ETUDIANT")
    @PrimaryKeyJoinColumn(name = "id")
    @Inheritance(strategy = InheritanceType.JOINED)
    public class Etudiant extends Personne implements Serializable {
     
    	private static final long serialVersionUID = 8568384832356566022L;
     
      private String section;
     
    	public Etudiant() {
     
    	}
     
    	public String getSection() {
    		return section;
    	}
     
    	public void setSection(String section) {
    		this.section = section;
    	}
     
    	public Long getId() {
    		return super.getId();
    	}
     
    	public void setId(Long idEtu) {
    		super.setId(idEtu);
    	}
     
    	public String getNom() {
    		return super.getNom();
    	}
     
    	public void setNom(String nom) {
    		super.setNom(nom);
    	}
     
     
    }
    Au niveau du session bean tout marche, j'ai un étudiant avec ses propriétés (qu'elles soient héritées ou non) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    	public List<Etudiant> lister() {
    		List<Etudiant> etudiants = new ArrayList<Etudiant>();
    		Query query = em.createQuery("from Etudiant e ");
     
    		etudiants = query.getResultList();
     
    		return etudiants;
     
    	}
    Au niveau du contrôleur JSF j'obtient bien une liste d'étudiants, mais les propriétés héritées de Personne (id et nom) sont null ..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    	public void listerEtudiants() {
    		etudiants = EtudiantBM.lister();
    	}
    Comment est-ce possible que le sessionBean contienne toutes les propriétés puis qu'en les envoyant vers JSF toutes les propriétés héritées deviennent null ?

    J'ai même essayé de mettre la visibilité des méthodes de la classe Personne en public .. Sans succès .. Je sèche là ..

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2010
    Messages : 65
    Par défaut
    le code ci-dessus est bon, le problème venait d'un composant graphique, j'ai toujours pas compris mais c'est ok maintenant.

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

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9
    Par défaut
    svp comment vous avez fais pour resoudre le probleme j'ai le meme probleme

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

Discussions similaires

  1. [MySQL] Ajout d'options dans une liste déroulante à partir du résultat d'une requête
    Par minogttao dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 11/12/2006, 18h18
  2. Renseigner une list box à partir du champ d'une table
    Par Daniel MOREAU dans le forum Access
    Réponses: 5
    Dernier message: 21/11/2006, 17h23
  3. Remplir une liste déroulante à partir d'un champ dans une pop up
    Par wiam26 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 23/08/2006, 16h42
  4. Nomer une liste a partir d'un nom pris dans une liste
    Par leau2001 dans le forum Général Python
    Réponses: 2
    Dernier message: 22/05/2006, 11h51
  5. [MySQL] Remplissage d'une liste déroulante à partir d'une requête SQL
    Par gaucher dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 11/05/2006, 15h46

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