Supondo que eu tenha tres entidades:
Fabricante
Peca
Especificacao
Considerando os seguintes relacionamentos:
Fabricante 1 ------- * Peca * ------- 1 Especificacao
Meu problema é que quando eu tendo adicionar uma nova peça, se
alguma das peças já cadastradas possuir a mesma especificação desta peça,
eu não consigo adicionar esta peça na lista de peças do fabricante pois a
especificação violará NonUniqueObjectException da sessão.
Exemplo:
.Fabricante "F1"
.. Peça "P1" - Especificacao "E1"
.. Peça "P2" - Especificacao "E2"
Quando eu tento adicionar a peça “P3” - “E1” eu não consigo a não
ser que eu caminhe pela lista de peças de “F1” buscando essa especificacao e a
use caso eu a encontre.
Essa busca seria muito custosa quando eu tivesse um numero elevado de peças.
Qual a solução para essa situação?