Tomando LazyInitializationException na cara quando tento modificar uma entidade

0 respostas
SanjuanRJ
Bem, eu estou pegando a minha entidade da seguinte forma:
public Faclube getFaclube() 
    {
        if(paginaEstado != null && !paginaEstado.equals(""))
        {
            faclube = new Faclube(faclubeDao.pesquisarPorId(Long.parseLong(id)));

            if(faclube.getDataFundacao() != null)
            {
                Calendar calendar = Calendar.getInstance();
                
                calendar.setTime(faclube.getDataFundacao());

                diaFundacao = String.valueOf(calendar.get(Calendar.DAY_OF_MONTH));
                mesFundacao = String.valueOf(calendar.get(Calendar.MONTH) + 1);
                anoFundacao = String.valueOf(calendar.get(Calendar.YEAR));
            }

            for(Anexo anexo: faclube.getAnexos())
            {
                anexo.setEstado(EstadoAnexoEnum.ANTIGO.getValor());
            }

            if(faclube.getAnexos().size() > 0)
            {
                pasta = ((List<Anexo>) faclube.getAnexos()).get(0).getPastaAnexo();
            }

            faclubeDao.clear();
        }

        return faclube;
    }
o método pesquisarPorId vai chamar entityManager.find();

A partir desse ponto está tudo ok, o problema vem quando eu tento fazer alguma modificação nesse faclube, por exemplo adicionar um item a coleção de artistas que tem em um dos atributos dele.

Por exemplo, daria erro nessa linha.
faclube.getContatoInternet().add(new ContatoInternet(contatoInternet));

Eu pensei que esse clear, forçasse o desacoplamento do EntityManager fazendo com que ele seja uma entidade não gerenciada.

e agora? alguém tem alguma solução?

Obrigado desde já :D

Criado 3 de julho de 2009
Respostas 0
Participantes 1