Merge inserindo um novo registro

2 respostas
F

Pessoal, tudo blz,

é o seguinte, possuo algumas tabelas q suas chaves são atribuidas manualmente (eu sei q não é legal, mas é necessário), o problema é q quando mudo a chave e mando atualizar através do merge, ele faz é inserir um novo registro com os dados, o q eu posso fazer pra isso não acontecer?

Obrigado

2 Respostas

R

Posta algum código de exemplo onde isso esteja acontecendo.

F
public String salvar() {
		
		if (novoRegistro == true) {
			empresaDao.salvar(empresa);
			FacesUtils.mensErro("Registro Salvo com Sucesso!");
		} else {
			empresaDao.atualizar(empresa);
			FacesUtils.mensErro("Registro Atualizado com Sucesso!");
		}

		return "sucesso";

	}
@Override
	@Transactional(readOnly=false,propagation=Propagation.REQUIRED)
	public T atualizar(T object) {
		getEntityManager().merge(object);
		return object;
	}

Apesar de cair no atualizar, ele está inserindo um novo registro quando edito a chave primária

Criado 19 de maio de 2010
Ultima resposta 19 de mai. de 2010
Respostas 2
Participantes 2