Bonjour, Je suis en train de développer une petite application avec hibernate et struts mais j'ai un problème au niveau de l'authenetification:
voici l'erreur que j'aivoici mon fichier Manager.java:
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 description Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête. exception javax.servlet.ServletException: L'exécution de la servlet a lancé une exception cause mère java.lang.NoClassDefFoundError: antlr.collections.AST java.lang.J9VMInternals.verifyImpl(Native Method) java.lang.J9VMInternals.verify(J9VMInternals.java:72) java.lang.J9VMInternals.initialize(J9VMInternals.java:134) org.hibernate.hql.ast.ASTQueryTranslatorFactory.createQueryTranslator(ASTQueryTranslatorFactory.java:35) org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:74) org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:56) org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:72) org.hibernate.impl.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:133) org.hibernate.impl.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:112) org.hibernate.impl.SessionImpl.createQuery(SessionImpl.java:1623) org.impression.beans.Manager.userExist(Manager.java:19) org.impression.action.LoginAction.execute(LoginAction.java:24) 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)
et voici mon fichier LoginAction:
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 package org.impression.beans; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; public class Manager { private static String CONFIG_FILE_LOCATION = "/hibernate.cfg.xml"; private static final Configuration cfg = new Configuration(); private static SessionFactory sessionFactory = cfg.configure(CONFIG_FILE_LOCATION).buildSessionFactory(); public boolean userExist(String login, String pwd){ boolean oui = true; try { Session session = sessionFactory.openSession(); Query query = session.createQuery("from User where login = :log and passwd = :pwde"); query.setParameter("log", login); query.setParameter("pwde", pwd); query.uniqueResult(); if(null != query.list()) oui = true; else oui = false; } catch (Exception e) { e.printStackTrace(); } return oui; } // }
merci pour votre aide
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 package org.impression.action; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.impression.beans.Manager; import org.impression.form.LoginForm; public class LoginAction extends Action{ public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { ActionForward forward = new ActionForward(); Manager manager = new Manager(); try { forward = mapping.findForward("failure"); LoginForm loginform = (LoginForm) form; // à voir et à revoir // cast de la classe mère à la classe fille et vise versa if (manager.userExist(loginform.getLogin(), loginform.getPasswd())) forward = mapping.findForward("success"); else forward = mapping.findForward("failure"); } catch (Exception e) { e.printStackTrace(); } return (forward); } }
Partager