Estou com um problema em um relacionamento Many-To-Many, quando dou um session.close() me resulta o seguinte erro:
org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: br.com.accion.modelo.Usuario.filial, no session or session was closed
Classe Retorna Usuario
public class RetornaUsuario {
@SuppressWarnings("unchecked")
public Usuario retornaUsuario(String nomeUsuario){
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
Query q = session.createQuery("from Usuario u where u.nome_usuario = :nome");
q.setParameter("nome", nomeUsuario);
Usuario usuario = (Usuario) q.uniqueResult();
session.close();
return usuario;
}
}
Tenho vários relacionamentos nessa classe 2 One-to-Many e 2 Many-to-Many
O erro está dando quando tento acessar os dados do 2º relacionamento Many-To-Many
@ManyToMany(targetEntity = Filial.class)
@JoinTable(name = "web_usuario_filial_emp", joinColumns = { @JoinColumn(name = "webusuarioid") }, inverseJoinColumns = { @JoinColumn(name = "filialid") })
private List<Filial> filial;
O que fazer? 