Erro ao gravar em 3 tabelas através de um Servlet acessando JPA

Através de um servlet eu gravo informações provenientes de um jsp em 3 tabelas : pessoa, usuario e precadastro.

Nas tabelas usuario e precadastro preciso do ID_PESSOA gerado no momento do cadastro.

Tenho o seguinte código

pes.setNome(nome); // Objeto pessoa

objuser.setSenha(senha);
objuser.setUsuario(usuario);
objuser.setPessoa(pes); // Seta o objeto pes
objuser = users.insereUsuario(objuser); // Aqui grava pessoa e usuario normalmente. ID_PESSOA certo.


objprecad.setPessoa(pes); // Seta o objeto pes
objprecad.setCodigo( HashUtils.md5( dataatual.toString() ) );
pres.inserePreCadastro(objprecad);

Problema que esta última linha grava um outro registro na tabela pessoa e referencia este ID_PESSOA na tabela precadastro.

O que faço para solucionar o problema ?

Obrigado

Eduardo