Por que não ocorre a edição de uma linha?

Colegas,

Por que não consigo editar um cargo (conforme abaixo)? Estou utilizando um mesmo form para Inserção/Edição, mas sempre ocorre inserção. O que é que estou deixando passar?

if(this.cargos.getCgid() !=null){
this.entityManager.merge(this.cargos);
} else{
this.entityManager.persist(this.cargos);
}

Utilizo Seam

Mariano

Deve estar sempre caindo no else. Já debugou o código. Tem certeza de que tem valor sendo retornado no método getCgid()?

Grato, Fiaux

Já deixei somente a linha this.entityManager.merge(this.cargos); mesmo assim, ocorre uma inserção.

Curioso isso! Mas está ocorrendo. Tem idéia do que possa estar acontecendo?

Mariano