Problema ao passar o parâmetro EAGER para um campo anotado com JPA

Bom dia pessoas,

Estou com um probleminha, minha aplicação JPA dava um erro de javax.servlet.ServletException: failed to lazily initialize a collection of role: org.it4services.contactprovider.to.Campanha.tabulacaoList, no session or session was closed ao obter uma lista de uma classe com a relação OneToMany, aí eu anotei ela com a opção EAGER para obter tudo na tentativa de sanar este problema. Mas quando faço isso dá um problema ao subir a aplicação no JBoss, e a causa raiz do problema é a que segue abaixo:

Caused by: org.hibernate.HibernateException: cannot simultaneously fetch multiple bags
at org.hibernate.loader.BasicLoader.postInstantiate(BasicLoader.java:66)
at org.hibernate.loader.entity.EntityLoader.(EntityLoader.java:75)
at org.hibernate.loader.entity.EntityLoader.(EntityLoader.java:43)
at org.hibernate.loader.entity.EntityLoader.(EntityLoader.java:33)
at org.hibernate.loader.entity.BatchingEntityLoader.createBatchingEntityLoader(BatchingEntityLoader.java:103)
at org.hibernate.persister.entity.AbstractEntityPersister.createEntityLoader(AbstractEntityPersister.java:174
at org.hibernate.persister.entity.AbstractEntityPersister.createEntityLoader(AbstractEntityPersister.java:1752)
at org.hibernate.persister.entity.AbstractEntityPersister.createLoaders(AbstractEntityPersister.java:2984)
at org.hibernate.persister.entity.AbstractEntityPersister.postInstantiate(AbstractEntityPersister.java:2977)
at org.hibernate.persister.entity.SingleTableEntityPersister.postInstantiate(SingleTableEntityPersister.java:690)
at org.hibernate.impl.SessionFactoryImpl.(SessionFactoryImpl.java:290)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1294)
at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:91
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:66
… 52 more

A classe da onde estou tentando obter a lista, e que nem subiu a aplicação quando coloquei o EAGER, está anotada da seguinte forma:

@Entity  
public class Campanha implements Serializable {  
  
    private static final long serialVersionUID = 1L;  
  
    @Id  
    @GeneratedValue  
    private Integer id;  
    private String nome;  
  
    @OneToMany(mappedBy = "campanha", cascade = ALL, fetch=EAGER)  
    private List<Tabulacao> tabulacaoList = new ArrayList<Tabulacao>();  
  
    @ManyToMany(fetch=EAGER)  
    @JoinTable(inverseJoinColumns = @JoinColumn(name="id_usuario", referencedColumnName = "id"), joinColumns = @JoinColumn(name="id_campanha", referencedColumnName = "id"))  
    private List<Usuario> usuarioList = new ArrayList<Usuario>();  
  
    private Boolean ativo;

A classe à qual a anterior se relaciona está da seguinte forma:

@Entity  
public class Tabulacao implements Serializable {  
  
    private static final long serialVersionUID = 1L;  
      
    @Id  
    @GeneratedValue  
    private Integer id;  
      
    @ManyToOne  
    @JoinColumn(name="id_campanha", referencedColumnName = "id")  
    private Campanha campanha = new Campanha();

Mandem uma luz por favor. Valeu!!! :smiley: