Boa tarde galera, estou tendo dificuldade de implementar o metodo update com jpa. ao fazer o update outro regstro é inserido, sei que devo pesquisar o ‘id’ antes para que efetue o update , mas a duvida é como chamar. abaixo o codigo:
no controler:
public void alterarCliente(ActionEvent actionEvent){
ClienteDAO dao = new ClienteDAO();
dao.update(cliente);
}
no DAO
public Cliente getCliente(long id) {
EntityManager em = getEntityManager();
return (Cliente) em.find(Cliente.class, id);
}
public void update(Cliente cliente){
EntityManager em = getEntityManager();
try{
//inicia o processo de transacao
em.getTransaction().begin();
em.merge(cliente);
//manda bala para o BD
em.getTransaction().commit();
}catch(Exception e) {
//se der algo de errado vem parar aqui, onde eh cancelado
em.getTransaction().rollback();
//cancela a transcao em caso de falha
}
obrigado e boa tarde a todos.