Erro Hibernate: Illegal attempt to associate a collection with two open sessions

Olá pessoal, estou tentando fazer uma inserção e uma alteração em um evento.
A inserção é feita, mas ao alterar o registro está aparecendo o erro “Illegal attempt to associate a collection with two open sessions”.

O que estou querendo é que ao inserir na tabela Lançamento, o sistema altere na tabela Aparelho o atributo disponivel para “false”(0).

Segue abaixo os códigos.

Método Salvar

private void b_salvarActionPerformed(java.awt.event.ActionEvent evt) {                                         
        boolean validarGravacao = validarDados();
        ConLancamento conLanc1 = new ConLancamento();
        Date dtLanc = new Date();
        
        SessionFactory exibir1 = new Configuration()
        .setProperty("hibernate.show_sql", "true")
        .setProperty("hibernate.format_sql", "true")
        .configure("hibernate.cfg.xml")
        .buildSessionFactory();
        
        
        Session sessao = exibir1.openSession();// Iniciando, abrindo sessão 
        listaAparelho = sessao.createQuery("from ConAparelho where apaNumTi = '"+tf_etiqueta.getText().toUpperCase()+"'").list();
        conAparelho = listaAparelho.get(0);
        exibir1.close(); // Fechando sessção
        
        
        int codAp = conAparelho.getApaCod();
        System.out.println("Cod aparelho: "+codAp);
        System.out.println("Aparelho disponível: "+conAparelho.isApaDisponivel());
        System.out.println("Cod Rca: "+tf_codRca.getText());
        System.out.println("Dt. Lanc: "+dtLanc);
        System.out.println("Obs: "+tf_obs.getText());
        
        if(validarGravacao == true){
            conRca.setRcaCod(Integer.parseInt(tf_codRca.getText()));
            conAparelho.setApaCod(codAp);
            conAparelho.setApaDisponivel(false);
            conLanc1.setConRca(conRca);
            conLanc1.setConAparelho(conAparelho);
            conLanc1.setLanDtLanc(dtLanc);
            conLanc1.setLanObs(tf_obs.getText());
            try{
                DaoLancamento daoLanc = new DaoLancamento(conLanc1);
                DaoLancamento daoApa = new DaoLancamento(conAparelho);
                
                daoLanc.Inserir();
                daoApa.Atualizar();
                
                limparDados();

                model.adicionar(conLanc1);
                model.ordernarPorSupervisor();
            }
            catch(Exception erro){
               JOptionPane.showMessageDialog(rootPane, "Erro ao salvar registro: "+erro.getCause());
            }
            
        }
    }        

Métodos Salvar e Atualizar da classe DAO:

@Override
    public void Inserir() { 
        Session sessao1 = (Session)HibernateUtil.getSessionFactory().openSession();
       try
            {
                
                transacao = sessao1.beginTransaction();//faz a tranzação e inicia a sessão do hibernate
                sessao1.save(controle);//atualizando os dados antigos que o objeto (sis_drs) contem para os atuais...
                transacao.commit();//agora garantindo a gravação
                sessao1.close();//fechando a sessão
                JOptionPane.showMessageDialog(null, "Registro salvo com sucesso!");
            }
            catch(ConstraintViolationException erro ){
                JOptionPane.showMessageDialog(null, "Erro de constrantes: "+erro.getCause());
                transacao.rollback();
                erros = true;
            }
            catch(HibernateException | HeadlessException erro){
                JOptionPane.showMessageDialog(null, "Erro ao salvar: "+erro.getCause());
                transacao.rollback();
                erros = true;
            }
            catch(Exception erro){
                JOptionPane.showMessageDialog(null, "Erro ao salvar: "+erro.getCause().toString());
                transacao.rollback();
                erros = true;
            }
    }

@Override
    public void Atualizar() {      
        Session sessao1 = (Session)HibernateUtil.getSessionFactory().openSession();
        try
            {
                
                transacao = sessao1.beginTransaction();//faz a tranzação e inicia a sessão do hibernate
                sessao.update(controle);//atualizando os dados antigos que o objeto (sis_drs) contem para os atuais...
                transacao.commit();//agora garantindo a gravação
                sessao1.close();//fechando a sessão
                
                JOptionPane.showMessageDialog(null, "Registro atualizado com sucesso!");
            }
            catch(HibernateException | HeadlessException erro)
            {
                JOptionPane.showMessageDialog(null, "Erro atualizar: "+erro.getMessage());
                transacao.rollback();
                erros = true;
            }
            catch(Exception erro){
                JOptionPane.showMessageDialog(null, "Erro atualizar: "+erro.getMessage());
                transacao.rollback();
                erros = true;
            }
    }

A inserção está sendo feita normalmente, mas da erro ao tentar alterar.