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
En fait, avant je mettais juste em.remove(document), et j'avais l'erreur cité ci-dessus
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 public void supprimerDocument(Document document) { em.remove(em.find(Document.class, document.getId())); }
Maintenant, mon problème est : lorsque je veux faire une requête de type SELECT, j'ai de nouveau cette erreur :
Et la je ne peux pas mettre un find
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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)
Savez vous comment peut on corriger ce problème ?
Merci
Partager