GenericDAO comumDao = DAOFactory.getGeneric(Sistema.COMUM); try { ConfiguracaoGRU configInscricao = curso.getConfiguracaoGRUInscricao(); ConfiguracaoGRU configMensalidade = curso.getConfiguracaoGRUMensalidade(); if (configInscricao != null) { if (configInscricao.getGrupoEmissaoGRU().getId() == 0) comumDao.create(configInscricao.getGrupoEmissaoGRU()); if (configInscricao.getId() == 0) comumDao.create(configInscricao); curso.setIdConfiguracaoGRUInscricao(configInscricao.getId()); } else curso.setIdConfiguracaoGRUInscricao(null); if (configMensalidade != null) { if (configMensalidade.getGrupoEmissaoGRU().getId() == 0) comumDao.create(configMensalidade.getGrupoEmissaoGRU()); if (configMensalidade.getId() == 0) comumDao.create(configMensalidade); curso.setIdConfiguracaoGRUMensalidade(configMensalidade.getId()); } } catch (HibernateException e) { throw new DAOException(e); } finally { comumDao.close(); } daoLato.update(curso);