Bonjour à tous et à toutes je confronte un problème concernant les requêtes HQL
Voici le type d'erreur que je reçoit:
java.lang.IllegalArgumentException: node to traverse cannot be null!
org.hibernate.hql.ast.util.NodeTraverser.traverseDepthFirst(NodeTraverser.java:63)
org.hibernate.hql.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.java:280)
org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:182)
org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:136)
org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:101)
org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:80)
org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:98)
org.hibernate.impl.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:156)
org.hibernate.impl.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:135)
org.hibernate.impl.SessionImpl.createQuery(SessionImpl.java:1651)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
java.lang.reflect.Method.invoke(Unknown Source)
org.hibernate.context.ThreadLocalSessionContext$TransactionProtectionWrapper.invoke(ThreadLocalSessionContext.java:342)
$Proxy104.createQuery(Unknown Source)
com.hibernate.Utilisateur.logging(Utilisateur.java:150)
Servlet.Login.doPost(Login.java:45)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
et voici le code approprié dans ma servlet:
ainsi que la méthode logging() dans ma classe Utilisateur:
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 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub String ident=request.getParameter("login"); String password=request.getParameter("pass"); Utilisateur u=new Utilisateur() ; Iterator iter=u.logging(); boolean exit; while ((iter.hasNext() ) && (exit=false)) { Utilisateur u1 = (Utilisateur) iter.next(); int id=u1.getIdentifiant(); String idS=Integer.toString(id); String pass=u1.getPassword(); if(idS.equals(ident) && pass.equals(password)) { exit=true; RequestDispatcher rd=getServletContext().getRequestDispatcher("/page1.jsp"); rd.forward(request,response); } } RequestDispatcher rd=getServletContext().getRequestDispatcher("/erreur.jsp"); }
Y'a t'il une personne qui pourra m'aider à résoudre ce probléme
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 public Iterator logging()throws HibernateException{ Session session = HibernateUtil.getSessionFactory().getCurrentSession(); session.beginTransaction(); String q="form utilisateur "; Query query=session.createQuery(q); List list=query.list(); Iterator it=list.iterator(); return it; }
Je serais très reconnaissante
Merci![]()
Partager