Bonjour à tous ,
Je suis un étudiant en informatique et j'ai une question à propos de développement web Java EE ...
J'ouvre une session Hibernate avec le code :
Session s = HibernateUtil.currentSession();
HibernateUtil est une classe Java que j'ai fait pour l'ouverture et la fermeture de la session Hibernate.
La méthode CurrentSession du Hibernate Util le code :
1 2 3 4 5 6 7 8 9 10
| public static Session currentSession() throws HibernateException {
Session s = (Session) threadLocal.get();
// Ouvre une nouvelle Session, si ce Thread n'en a aucune
if (s == null) {
s = sessionFactory.openSession();
threadLocal.set(s);
}
return s;
} |
Si je ferme la session par HibernateUtil.closeSession() tous passe bien
NB: le code de la méthode closeSession :
1 2 3 4 5 6
| public static void closeSession() throws HibernateException {
Session s = (Session) threadLocal.get();
threadLocal.set(null);
if (s != null)
s.close();
} |
Mais quand je ferme la session par s.close(); il y a des problèmes au niveau d'authentification.... Le problème se présente alors que je peux authentifier une seule fois. Si je déconnecte et je reconnecte , je ne peux pas !
Pouvez vous expliquer la différence entre les deux fermeture de la session Hibernate que je suis sûr ce sont les causes du problème ?
Partager