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 :
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 :
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
Partager