Bom dia senhores,
em um datatable possuo uma listagem. onde posso alterar os precos dos itens.
quando eu clico em salvar. ele salva as alterações e busca a lista dinovo e mostra na tela.
qunado um preço ja existe eu faço assim:
EntityManager em = getEntityManager();
try {
utx.begin();
Coleta c = em.find(Coleta.class, col.getIdColeta());
c.setColetaAtu(col.getColetaAtu());
em.merge(c);
utx.commit();
} catch (Exception e) {
e.printStackTrace();
} finally {
em.close();
}
quando eh um preço novo eu faço assim:
EntityManager em = getEntityManager();
Insumo insumo;
Local local;
try {
utx.begin();
em.persist(col);
insumo = col.getInsumoidInsumo();
insumo.getColetaCollection().add(col);
em.merge(insumo);
local = col.getLocalidLocal();
local.getColetaCollection().add(col);
em.merge(local);
utx.commit();
} catch (Exception e) {
e.printStackTrace();
} finally {
em.close();
}
mas toda vez quando é um preço novo...o id do preco nao vem quando eu chamo a lista dinovo: olha:
Item na lista:
unidade: un ,idcoleta: null ,coletaAnt: null ,coletaAtu: null
Item recuperado depois de salvar:
unidade: un ,idcoleta: null ,coletaAnt: null ,coletaAtu: 9.0
o idcoleta sumiu ! :(
oque eu faço ?
obrigado desde ja