probleme Lazy loading
3 messages
• Page 1 sur 1
- roronnoa
- Nouveau WRInaute

- Messages: 3
- Inscription: 17 Nov 2008
probleme Lazy loading
Bonjour,
Je travaille en ce moment sur un application java EE5, avec jsf, ejb3, jpa…
et je rencontre l’exeption suivante :
org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: com.yaps.petstore.entity.catalog.Product.items, no session or session was closed
Voici mon code :
L’architecture est la suivante :
Jsf-->controller(managedBean)-->ejb stateless-->entityBean
Controller (CatalogController ):
public String doFindProducts() {
catalogBean=(CatalogLocal)new InitialContext().lookup("PetstoreEAR/CatalogBean/local");
category = catalogBean.findCategory(getParamId("categoryId"));
products =category.getProducts();
}
Ejb stateless:
public class CatalogBean implements CatalogRemote, CatalogLocal {
@PersistenceContext(unitName = "petstorePU")
private EntityManager em;
public Category findCategory(final Long categoryId) {
Category category;
category = em.find(Category.class, categoryId);
return category;
}
entityBean
j’ai un entity bean product
et un entityBean category qui a comme attribut une liste de product.
Apres avoir cherché sur plusieurs forum j’ai cru comprendre que l’erreur peut venir du fait qu’au moment de faire products =category.getProducts();
Dans le controller, alors l’entity category n’est plus rattaché au context de persistance.
Mais je ne sait toujours pas comment resoudre le probleme…
Merci d’avance a tous ceux qui prendront le temps de lire et de repondre.
Je travaille en ce moment sur un application java EE5, avec jsf, ejb3, jpa…
et je rencontre l’exeption suivante :
org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: com.yaps.petstore.entity.catalog.Product.items, no session or session was closed
Voici mon code :
L’architecture est la suivante :
Jsf-->controller(managedBean)-->ejb stateless-->entityBean
Controller (CatalogController ):
public String doFindProducts() {
catalogBean=(CatalogLocal)new InitialContext().lookup("PetstoreEAR/CatalogBean/local");
category = catalogBean.findCategory(getParamId("categoryId"));
products =category.getProducts();
}
Ejb stateless:
public class CatalogBean implements CatalogRemote, CatalogLocal {
@PersistenceContext(unitName = "petstorePU")
private EntityManager em;
public Category findCategory(final Long categoryId) {
Category category;
category = em.find(Category.class, categoryId);
return category;
}
entityBean
j’ai un entity bean product
et un entityBean category qui a comme attribut une liste de product.
Apres avoir cherché sur plusieurs forum j’ai cru comprendre que l’erreur peut venir du fait qu’au moment de faire products =category.getProducts();
Dans le controller, alors l’entity category n’est plus rattaché au context de persistance.
Mais je ne sait toujours pas comment resoudre le probleme…
Merci d’avance a tous ceux qui prendront le temps de lire et de repondre.
-

Bacteries - WRInaute passionné

- Messages: 1369
- Inscription: 27 Mai 2004
Tu pourrais voir la ligne qui pose problème en faisant un débugage pas à pas.
Là je pense que ta connection à la BDD se ferme après "catalogBean.findCategory(getParamId("categoryId")); "
Regarde de ce coté là : http://www.hibernate.org/43.html
Là je pense que ta connection à la BDD se ferme après "catalogBean.findCategory(getParamId("categoryId")); "
Regarde de ce coté là : http://www.hibernate.org/43.html
- roronnoa
- Nouveau WRInaute

- Messages: 3
- Inscription: 17 Nov 2008
la ligne qui pose probleme est la suivante:
products =category.getProducts();
si je fait category.getProducts() dans l'ejb session , sa marche sans probleme.
Mais ce que je voudrai, c'est le faire a partir de la couche controller.
si tu as une idée je suis preneur.
merci
products =category.getProducts();
si je fait category.getProducts() dans l'ejb session , sa marche sans probleme.
Mais ce que je voudrai, c'est le faire a partir de la couche controller.
si tu as une idée je suis preneur.
merci
3 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- 3 mythes du référencement sur Google - 15-11-2006
- Indexation du Flash : Google sait gérer les XML/txt externes - 19-06-2009
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités
