2011-05-05 4 views
-1

salut quand je lance mon application à l'aide mise en veille prolongée à insérer dans la base de données SQL 5.0 i obtenir cette exception:afterTransactionCompletion() n'a jamais été appelé

Exception dans le thread "principal" java.lang.NullPointerException à org.domain. projet.config.Facade.createConnexion (Facade.java:227) sur org.domain.projet.config.Test.main (Test.java:49) 5 mai 2011 10:41:27 net.sf.hibernate.impl.SessionImpl finaliser

ceci est la méthode:

public Connexion createConnexion(int id_utilisateur) throws HibernateException 
{ 
    Connexion con =new Connexion(); 
    con.setDateDeb(new Date()); 
    con.setDateFin(new Date()); 
    con.setIdCnx(id_utilisateur); 


     Session session = sessFactory.openSession(); 
     net.sf.hibernate.Transaction tx=null; 
     try { 
     tx = session.beginTransaction(); 

    Utilisateur user=(Utilisateur) session.load(Utilisateur.class,id_utilisateur); 
    con.setUtil(user); 
    //((List<Connexion>)user.getConnexions()).add((Connexion) con); 
    user.getConnexions().add(con); 
    session.saveOrUpdate(user); 
    session.saveOrUpdate(con); 

    //session.flush(); 
     tx.commit(); 
     } 
     catch (HibernateException he) { 

      if (tx!=null) tx.rollback(); 
      throw he; 

     } 
     finally { 
     session.close(); 
     } 
return con; 


} 
+0

Titre trompeur – Konstantin

Répondre

1

La trace de pile vous indique exactement où se situe l'erreur: à la ligne 227, dans la classe Facade, et dans la méthode createConnexion. Sur cette ligne, vous appelez probablement une méthode sur une référence nulle. Sans voir le code, il est impossible d'être plus précis.

BTW: quelle est la relation entre le titre et le corps de votre question?