Hibernate - l'échec de l'paresseusement initialiser - pas de session ou la session a été fermée

j'ai trouvé bizarre état de mon hibernation programme. Voici mon code

public Set<AnotherClass> getAnotherClassSetsFromSomeClass() {
        Session session = HIbernateUtil.getSessionFactory().openSession();
        Transaction trans = session.beginTransaction();
        SomeClass sc = (SomeClass)session.get(SomeClass.class,"classId");
        trans.commit();
        session.close;
        return sc.getAnotherClassSet();
    }

Ce code en regardant bien, si je le lance sur la Console Java.

Si je suis a utilisé une web app (JSF),j'ai eu cette erreur

échoué paresseusement initialiser - pas de session ou la session a été fermée

Il a "Un à Plusieurs" de la Relation (Un SomeClass a Beaucoup de AnotherClass)

Le message de l'exception souligné retour sc.getAnotherClassSet() comme un pointeur null. Je suis sured que j'ai données dans ma base de données.

Ainsi que j'ai découvert que si j'ajoute System.out.println(sc.getAnotherClassSet()) avant de return sc.getAnotherClassSet() mon code fonctionne bien.

Une idée de ce qui s'est passé ? Merci.

OriginalL'auteur Aldo Suwandi | 2013-08-07