salut à tous,
me revoilà avec le problème de la récupération de donnée avec hibernate, après avoir réussi pour le test de la connexion avec la BD et la récupération de nombre d'enregistrements, maintenant je veux récupérer tous les enregistrements de ma table utilisateur, j'ai essayé ce code:
ceci m'affiche une exception dont la tace est la suivante:
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
61
62
63
64
65
66
67 public class UserLoginAction extends Action { /* * Generated Methods */ Integer id; String email; String password; String passF; String mailF, mailTXT; List L1,L, user; int i; Iterable utilisateur; List utilisateurs; public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { UserLoginForm userLoginForm = (UserLoginForm) form; // instanciation d'objet utilisateur utilisateur utilisateur = new utilisateur(); // récupération des champs de la BD id=utilisateur.getIdUtilisateur(); email=utilisateur.getEmailUtilisateur(); password=utilisateur.getPasswordUtilisateur(); //récupération des champs du formulaire mailF=userLoginForm.getUserName(); passF=userLoginForm.getPassword(); mailTXT=userLoginForm.getTXT_Courriel(); //instanciation de DAO utilisateur utilisateurDAO daoutil= new utilisateurDAO(); utilisateurs = daoutil.getSession().createQuery("select email_utilisateur from utilisateur ").list(); Iterator iter = utilisateurs.iterator(); while( iter.hasNext()) { utilisateur element = (utilisateur) iter.next(); } daoutil.getSession().close(); i=utilisateurs.size(); if(i==0) { request.setAttribute("test", "not ok :("); return mapping.findForward("failure"); } request.setAttribute("test", "oki"); return mapping.findForward("success"); } }
la ligne 136 fait référence à la ligne:
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 java.lang.IllegalStateException: No data type for node: org.hibernate.hql.ast.tree.IdentNode \-[IDENT] IdentNode: 'email_utilisateur' {originalText=email_utilisateur} org.hibernate.hql.ast.tree.SelectClause.initializeExplicitSelectClause(SelectClause.java:140) org.hibernate.hql.ast.HqlSqlWalker.useSelectClause(HqlSqlWalker.java:702) org.hibernate.hql.ast.HqlSqlWalker.processQuery(HqlSqlWalker.java:531) org.hibernate.hql.antlr.HqlSqlBaseWalker.query(HqlSqlBaseWalker.java:645) org.hibernate.hql.antlr.HqlSqlBaseWalker.selectStatement(HqlSqlBaseWalker.java:281) org.hibernate.hql.antlr.HqlSqlBaseWalker.statement(HqlSqlBaseWalker.java:229) org.hibernate.hql.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:218) org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:158) org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:109) org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:75) org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:54) org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:71) org.hibernate.impl.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:133) org.hibernate.impl.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:112) org.hibernate.impl.SessionImpl.createQuery(SessionImpl.java:1583) com.yourcompany.struts.action.UserLoginAction.execute(UserLoginAction.java:136) org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484) org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274) org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482) org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525) javax.servlet.http.HttpServlet.service(HttpServlet.java:709) javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
utilisateurs = daoutil.getSession().createQuery("select email_utilisateur from utilisateur ").list();
Merci pour vos réponses
Partager