NullPointerException lors d'un appel à un DAO.
Bonjour,
Dans un projet, lorsque je fait appel à la méthode "get_student_by_login" du DAO suivant :
Code:
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
| package be.promosoc.dao;
import org.hibernate.HibernateException;
import org.hibernate.classic.Session;
import org.hibernate.criterion.Restrictions;
import org.hibernate.Criteria;
import be.promosoc.models.Student;
public class StudentDAO {
public static Student get_student_by_id(Long id){
Student student= new Student();
try {
Session session = SessionManagement.getSessionFactory().getCurrentSession();
student = (Student) session.load(Student.class,id);
SessionManagement.getSessionFactory().close();
} catch (HibernateException ex){
System.err.println("Error when selecting user by userID "+ ex);
}
return student;
}
//REMSEB: Hibernate va faire un select student sur l ID
public static Student get_student_by_login(String login){
Student student= new Student();
try {
Session session = SessionManagement.getSessionFactory().getCurrentSession();
session.beginTransaction();
Criteria query = session.createCriteria(Student.class).add(Restrictions.like("login", login).ignoreCase());
student = (Student) query. uniqueResult();
SessionManagement.getSessionFactory().close();
} catch (HibernateException ex){
System.err.println("Error when selecting user by userID "+ ex);
}
return student;
}
public static void insert_student(Student student){
try {
Session session = SessionManagement.getSessionFactory().getCurrentSession();
session.beginTransaction();
session.save(student);
session.getTransaction().commit();
SessionManagement.getSessionFactory().close();
}catch(HibernateException ex){
System.err.println("Error when inserting user "+ ex);
}
}} |
je me retrouve avec l'exception suivante.
Code:
1 2 3 4 5 6 7 8
| Exception in thread "main" java.lang.NullPointerException
at org.hibernate.cache.impl.bridge.RegionFactoryCacheProviderBridge.nextTimestamp(RegionFactoryCacheProviderBridge.java:93)
at org.hibernate.impl.SessionFactoryImpl.openSession(SessionFactoryImpl.java:678)
at org.hibernate.context.ThreadLocalSessionContext.buildOrObtainSession(ThreadLocalSessionContext.java:142)
at org.hibernate.context.ThreadLocalSessionContext.currentSession(ThreadLocalSessionContext.java:103)
at org.hibernate.impl.SessionFactoryImpl.getCurrentSession(SessionFactoryImpl.java:695)
at be.promosoc.dao.StudentDAO.get_student_by_login(StudentDAO.java:28)
at DbLoader.main(DbLoader.java:26) |
Je ne comprend pas ou il y a une erreur, pouvez vous m'aider?
D'avance merci.