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 :

Lister information dans un tableau


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2013
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Tunisie

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

    Informations forums :
    Inscription : Février 2013
    Messages : 81
    Par défaut Lister information dans un tableau
    Bonsoir,

    j'ai un entity utilisateur, je veux afficher la liste des utilisateurs dans un tableau dans un page jsf,mais le tableau affiche toujours vide


    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
     
    public class UtilisateurImpl implements utilisateurDao {
     
        @Override
        public List<utilisateur> findAll() {
            Session s = HibernateUtil.getSessionFactory().getCurrentSession();
            s.beginTransaction();
            List<utilisateur> listutil = null;
            String sql = "Select u from Utilisateur u";
            try {
                s.beginTransaction();
                listutil = s.createQuery(sql).list();
                s.beginTransaction().commit();
            } catch (HibernateException e) {
                s.beginTransaction().rollback();
            }
            return listutil;
        }
    }

    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
     
    @Named(value="utilisateurBean")
    @RequestScoped
    public class utilisateurBean {
     
        private List<utilisateur> listutilisateur;
        private utilisateur selectedUtilisateur;
     
        public utilisateurBean() {
            this.listutilisateur = new ArrayList<>();
        }
     
        public List<utilisateur> getListutilisateur() {
            utilisateurDao utildao = new UtilisateurImpl();
            this.listutilisateur = utildao.findAll();
            return listutilisateur;
        }
     
        public void setListutilisateur(List<utilisateur> listutilisateur) {
            this.listutilisateur = listutilisateur;
        }
     
        public utilisateur getSelectedUtilisateur() {
            return selectedUtilisateur;
        }
     
        public void setSelectedUtilisateur(utilisateur selectedUtilisateur) {
            this.selectedUtilisateur = selectedUtilisateur;
        }
    }

    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
     
    <h:form id="formDataTable">  
                        <p:dataTable id="cars" var="util" value="#{utilisateurBean.listutilisateur}">  
     
                            <p:column headerText="login" style="width: 24%">
                                <h:outputText value="#{util.login}"/> 
                            </p:column>
                            <p:column headerText="mot passe" style="width: 24%">
                                <h:outputText value="#{util.motpasse}"/> 
                            </p:column>
                            <p:column headerText="mail" style="width: 24%">
                                <h:outputText value="#{util.email}"/> 
                            </p:column>
                            <p:column headerText="etat" style="width: 24%">
                                <h:outputText value="#{util.etat}"/> 
                            </p:column>
                        </p:dataTable>  
                    </h:form>

    je fait un test pour vérifier et affiche les éléments de la liste

    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
     
    public class main {
     
        public static void main(String argv[]) {
     
            utilisateurBean u = new utilisateurBean();
            List<utilisateur> l = u.getListutilisateur();
     
            for(utilisateur lt : l){
                System.out.println(lt.getEmail());
            }
     
        }
     
    }
    il m'affiche cette erreur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Exception in thread "main" java.lang.NullPointerException
    	at testt.main.main(main.java:29)
    	at testt.main.main(main.java:29)
    Java Result: 1
    voila la ligne 29
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for(utilisateur lt : l){

  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
    Salut
    cela veut dire que l est null.
    eric

  3. #3
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    d'où l'intérêt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
            } catch (HibernateException e) {
                s.beginTransaction().rollback();
            }
    d'afficher / logger ses exceptions

    Sérieux:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     public List<utilisateur> findAll() {
            Session s = HibernateUtil.getSessionFactory().getCurrentSession();
            s.beginTransaction();
            List<utilisateur> listutil = null;
            String sql = "Select u from Utilisateur u";
            try {
                s.beginTransaction();
                listutil = s.createQuery(sql).list();
                s.beginTransaction().commit();
            } catch (HibernateException e) {
                s.beginTransaction().rollback();
            }
            return listutil;
        }
    Tu as vu combien de transation imbriquées tu essaie de créer là, sachant que la plupart des driver ne supportent pas les transations imbriquées....

  4. #4
    Membre actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2013
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Tunisie

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

    Informations forums :
    Inscription : Février 2013
    Messages : 81
    Par défaut
    j’essaye avec cette méthode aussi mais résultat reste null


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
        public List<utilisateur> findAll() {
            Session session = HibernateUtil.getSessionFactory().getCurrentSession();
            session.beginTransaction();
            Query req = session.createQuery("from utilisateur");
            return req.list();

  5. #5
    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
    salut,
    peux-tu nous donner la trace de l´erreur en mettant ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    
      catch (HibernateException e) {
                e.printStackTrace();
                s.beginTransaction().rollback();
            }
    Eric

  6. #6
    Membre actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2013
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Tunisie

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

    Informations forums :
    Inscription : Février 2013
    Messages : 81
    Par défaut
    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
     
    org.hibernate.hql.ast.QuerySyntaxException: utilisateur is not mapped [Select u from utilisateur u]
    	at org.hibernate.hql.ast.util.SessionFactoryHelper.requireClassPersister(SessionFactoryHelper.java:181)
    	at org.hibernate.hql.ast.tree.FromElementFactory.addFromElement(FromElementFactory.java:110)
    	at org.hibernate.hql.ast.tree.FromClause.addFromElement(FromClause.java:94)
    	at org.hibernate.hql.ast.HqlSqlWalker.createFromElement(HqlSqlWalker.java:316)
    	at org.hibernate.hql.antlr.HqlSqlBaseWalker.fromElement(HqlSqlBaseWalker.java:3228)
    	at org.hibernate.hql.antlr.HqlSqlBaseWalker.fromElementList(HqlSqlBaseWalker.java:3112)
    	at org.hibernate.hql.antlr.HqlSqlBaseWalker.fromClause(HqlSqlBaseWalker.java:720)
    	at org.hibernate.hql.antlr.HqlSqlBaseWalker.query(HqlSqlBaseWalker.java:571)
    	at org.hibernate.hql.antlr.HqlSqlBaseWalker.selectStatement(HqlSqlBaseWalker.java:288)
    	at org.hibernate.hql.antlr.HqlSqlBaseWalker.statement(HqlSqlBaseWalker.java:231)
    	at org.hibernate.hql.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:254)
    	at org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:185)
    	at org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:136)
    	at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:101)
    	at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:80)
    	at org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:94)
    	at org.hibernate.impl.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:156)
    	at org.hibernate.impl.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:135)
    	at org.hibernate.impl.SessionImpl.createQuery(SessionImpl.java:1651)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:483)
    	at org.hibernate.context.ThreadLocalSessionContext$TransactionProtectionWrapper.invoke(ThreadLocalSessionContext.java:342)
    	at com.sun.proxy.$Proxy0.createQuery(Unknown Source)
    	at dao.UtilisateurImpl.findAll(UtilisateurImpl.java:30)
    	at Bean.utilisateurBean.getListutilisateur(utilisateurBean.java:73)
    	at testt.main.main(main.java:27)
    Exception in thread "main" java.lang.NullPointerException
    	at testt.main.main(main.java:29)
    Java Result: 1
    UtilisateurImpl.java:30
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    listutil = s.createQuery(sql).list();
    utilisateurBean.java:73
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this.listutilisateur = dao.findAll();
    main.java:27
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    List<Utilisateur> l = u.getListutilisateur();

Discussions similaires

  1. Réponses: 6
    Dernier message: 02/02/2013, 11h12
  2. probleme d'affichage des informations dans un tableau
    Par fleurrouge dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 28/06/2012, 21h48
  3. [Oracle] Tables Objets : Récupérer informations dans un tableau
    Par jo6891 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 06/01/2010, 10h44
  4. Réponses: 2
    Dernier message: 09/06/2009, 11h47
  5. Récupérer les informations dans un tableau
    Par schats dans le forum Langage
    Réponses: 12
    Dernier message: 21/11/2008, 19h19

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