Bonjour,
J'utilise JPA avec Hibernate comme implémentation.
J'ai une classe Tourne_Date suivante :
J'ai donc 2 associations ManyToOne avec par défaut un chargement EAGER.
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
19
20
21
22
23
24
25
26
27 @Entity public class Tournee_Date { ... private User coursier; // Le coursier qui réalise la tournée private Tournee tournee; // le modèle de tournée ... @ManyToOne() @JoinColumn(name = "COURSIER_ID", nullable = false) public User getCoursier() { return coursier; } public void setCoursier(User coursier) { this.coursier = coursier; } @ManyToOne() @JoinColumn(name = "TOURNEE_ID", nullable = false) public Tournee getTournee() { return tournee; } public void setTournee(Tournee tournee) { this.tournee = tournee; }
Lorsque je souhaite utiliser cette classe, j'ai l'erreur suivante :
Il semblerait donc qu' Hibernate ne soit pas capable de charger 2 associations différentes en mode EAGER au sein d'une même classe. Est-ce un BUG ?
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 Caused by: org.hibernate.loader.MultipleBagFetchException: cannot simultaneously fetch multiple bags at org.hibernate.loader.BasicLoader.postInstantiate(BasicLoader.java:93) at org.hibernate.loader.entity.EntityLoader.<init>(EntityLoader.java:118) at org.hibernate.loader.entity.EntityLoader.<init>(EntityLoader.java:70) at org.hibernate.loader.entity.EntityLoader.<init>(EntityLoader.java:53) at org.hibernate.loader.entity.BatchingEntityLoader.createBatchingEntityLoader(BatchingEntityLoader.java:131) at org.hibernate.persister.entity.AbstractEntityPersister.createEntityLoader(AbstractEntityPersister.java:2323) at org.hibernate.persister.entity.AbstractEntityPersister.createEntityLoader(AbstractEntityPersister.java:2346) at org.hibernate.persister.entity.AbstractEntityPersister.createLoaders(AbstractEntityPersister.java:3612) at org.hibernate.persister.entity.AbstractEntityPersister.postInstantiate(AbstractEntityPersister.java:3598) at org.hibernate.persister.entity.SingleTableEntityPersister.postInstantiate(SingleTableEntityPersister.java:1013) at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:422) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1737) at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:84) at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:904) ... 34 more
Quelqu'uun a-t-il déjà rencontré ce problème?
Merci d'avance.
Partager