Como pegar o id do objeto inserido sem fazer uma busca. EJB3

Olá pessoal, estou com um problema, tenho que fazer uma inserção de um objeto e na mesma transação pegar o id do objeto inserido,
este id será usado para inserir outro objeto, este outro objeto usa este id em sua chave composta.

Estou usando o Entity Manager, existe algum metodo que pegue isso automaticamente sem a necessidade de fazer uma busca pelos atributos deste objeto?

alguem tem alguma outra ideia.

valeu

Se eu não me engano, se vc tiver ainda a referência do objeto, vc consegue pegar a id preenchida logo depois da inserção.

então eu tenho a referência ao objeto, mas não fica preenchida depois da inserção
tipo no hibernate ele tem um metodo save(), que retorna o id da inserção

mas no Ejb3 não tem

não sei o que usar

vc pode usar o merge pra persistir tbm, e ele retorna objeto inserido.

se o id for null, ele sabe q nao é um update e insere. nao conheco muito, mas ja testei e funcionou pra mim.

cara não rolo tbm
acho q é meio gambi, mas pra eu pegar o ultimo id inserido?
alguem sabe?

tem uma função que pega isso, mas aqui no meu ejb3 eu passo o id do objeto como zero pra ele autoincrementa,
e a função do mysql “SELECT LAST_INSERT_ID();” retorna 0, mesmo no banco lah executando na linha de comando ou no phpmyadmin.

mto loco, alguem ai já usou?

abraços