Cadastro Mestre detalhe

Boa tarde.

Pessoal, tenho duas entidades A e B ligadas por um relacinamento bidirecional. A tem uma lista de b, logo é um @OneToMany. O cadastro é um mestre detalhe, ou seja, os objetos da lista B só vão ser inseridos no banco quando eu salvar o “pai” A. Usei cascade = cascadeType.ALL dentro da minhaanotação @oneToMany, ambas as entidades são salvas, porém a entidade B, que no banco tem uma chave estrangeira apontanto para A, vem com esse campo vazio, ou seja, o objeto pai não esta sendo setado ne entidade. Como posso resolver isso?

Utiliza da seguinte forma

B.setA(A);

antes de voce inserir o Objeto B no List voce precisa setar o objeto A que o B ira se referenciar utilizando o medoto setA() existente na classe B com isso o JPA ira fazer o controle para atualização da Chave quando enviar o B para o bando de dados.

Espero que tenha exclarecido em caso de duvida pode entrar em contato pelo MSN: pedroernestobraga@msn.com
Pedro E. Braga

Olá. Valeu pela ajuda. Na verdae, eu já estou fazendo isso, mas o que eu queria na verdade era que o @cascade funcionasse e o hibernate salvasse as dependências do meu objeto. Se eu precisar ficar iterando sobre a lista de filhos e setandos os pais sempre que tiver um mestre detalhe, o @cascade não tem sentido, fora que é um grande retrabalho, pois vou ter que iterar sobre as listas em todas as operações de persistência, atualização e exclusão.