bonjour

je debute sur hibernate

j'essaie de faire qqchose d'assez simple,
j'ai un objet qui contient une liste, et chaque objet de cette liste contient egalement une liste.

vous l'aurez compris, je veux en 1 requete recuperer tout ce petit monde,

mon 1er objet est Telepat qui a pour attribut :
private Set<TFshtmat> tFshtmatCollection;

et chaque objet TFshtmat a pour attribut
private Set<TNbveh> tNbvehCollection;

donc je veux recuperer un objet Telepat qui contient tout

voici mon code actuelement :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
Criteria c = createCriteria(TElepat.class);
c.add(Restrictions.eq("elepatId", elepatId));
c.setFetchMode("tFshtmatCollection", FetchMode.JOIN);
c.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
c.createCriteria("tFshtmatCollection")
.setFetchMode("tNbvehCollection", FetchMode.JOIN)
.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
 
TElepat res = (TElepat) c.uniqueResult();
ceci ne plante pas, mais dans mon action avec ce code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
element.getTFshtmatCollection()
ou element est mon objet Telepat ainsi recuperé j'ai cette belle exception :

GRAVE: "Servlet.service()" pour la servlet action a généré une exception
org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: fr.xxxx.xxxxx.entity.TElepat.tFshtmatCollecti
on, no session or session was closed
at org.hibernate.collection.AbstractPersistentCollection.throwLazyInitializationException(AbstractPersistentCollection.java:358)
at org.hibernate.collection.AbstractPersistentCollection.throwLazyInitializationExceptionIfNotConnected(AbstractPersistentCollection.java:3
50)
at org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:343)
at org.hibernate.collection.AbstractPersistentCollection.read(AbstractPersistentCollection.java:86)
at org.hibe

une aide me serait bien precieuse, merci