Bonjour
J'ai mon bean utilisateurBean qui implémente la Class Serializable, mais lorsque je lance l'application, tout marche bien mais j'ai le message d'erreur suivant:
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 sept. 27, 2015 8:05:00 PM org.apache.catalina.session.StandardSession writeObject AVERTISSEMENT: Impossible de sérialiser l'attribut de session utilisateurBean pour la session F155442CE7F6BF8458A004C999311376 java.io.NotSerializableException: com.telnet.entretien.dao.impl.LoginImpl at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1183) at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1547) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1508) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:347) at org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1671) at org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:1077) at org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:432) at org.apache.catalina.session.StandardManager.unload(StandardManager.java:353) at org.apache.catalina.session.StandardManager.stopInternal(StandardManager.java:518) at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232) at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5569) at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232) at org.apache.catalina.core.StandardContext.reload(StandardContext.java:3919) at org.apache.catalina.manager.ManagerServlet.reload(ManagerServlet.java:954) at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:364) at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:581) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745)
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 public class LoginImpl implements ILogin, java.io.Serializable { @Override public Login charger(Login l) { Login lg = null; Session session = HibernateUtil.getSessionFactory().openSession(); try { Query query = session.createQuery("From Login l where l.usernamse = '" + l.getUsernamse() + "' and l.motpasse='" + l.getMotpasse() + "'"); if (!query.list().isEmpty()) { lg = (Login) query.uniqueResult(); } } catch (HibernateException e) { lg = null; } return lg; } @Override public Login getLogin(int idC) { Login login = null; Session session = HibernateUtil.getSessionFactory().openSession(); try { login = (Login) session.get(Login.class, idC); } catch (HibernateException e) { login = null; } session.close(); return login; } }D'où peut venir l'erreur?
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 @ManagedBean @SessionScoped public class UtilisateurBean implements java.io.Serializable{ private Login login; private String role; private Login util = new Login(); private LoginImpl dao; Login l; @PostConstruct public void init() { dao = new LoginImpl(); } public Login getEventBC(int id) { ILogin dao1 = new LoginImpl(); login = dao1.getLogin(id); return login; } public String doLogin() { String rslt = null; l = dao.charger(this.util); if (l != null) { if (l instanceof Administrateur) { role = "administrateur"; rslt = "administrateur/rapport?faces-redirect=true"; } else if (l instanceof Responsable) { role = "responsable"; rslt = "/view/responsable/rapport?faces-redirect=true"; } } else { FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "Verifier votre login ou mot passe", "Verifier votre login ou mot passe")); } return rslt; } public String doLayout() { FacesContext.getCurrentInstance().getExternalContext().getSessionMap().clear(); return "/view/index?faces-redirect=true"; }
Merci
Partager