EJB entity bean et LazyInitializationException
Bonsoir,
Voila mon problème, je travail avec ejb 3 et j'arrive à ajouter des nouveaux enregistrements dans ma base de données, par contre lorsque je voulais supprimer un enregistrement dans ma table j'avais un LazyInitialisationException, aprés quelques recherches sur le net, j'ai trouvé et voila le code qui permet de supprimer
Code:
1 2 3 4 5
|
public void supprimerDocument(Document document) {
em.remove(em.find(Document.class, document.getId()));
} |
En fait, avant je mettais juste em.remove(document), et j'avais l'erreur cité ci-dessus
Maintenant, mon problème est : lorsque je veux faire une requête de type SELECT, j'ai de nouveau cette erreur :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
type Rapport d'exception
message
description Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête.
exception
org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: ejb.TypeDocument.document, no session or session was closed
org.hibernate.collection.AbstractPersistentCollection.throwLazyInitializationException(AbstractPersistentCollection.java:358)
org.hibernate.collection.AbstractPersistentCollection.throwLazyInitializationExceptionIfNotConnected(AbstractPersistentCollection.java:350)
org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:343)
org.hibernate.collection.PersistentSet.add(PersistentSet.java:189)
servlet.AjouterDocument.doGet(AjouterDocument.java:142)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) |
Et la je ne peux pas mettre un find
Savez vous comment peut on corriger ce problème ?
Merci