Hibernate one-to-many com varias Colunas

3 respostas
M

Alguem saberia me informar como fazer um relacionamento
one-to-many com varias colunas?
Eu usei a tag abaixo;

@hibernate.set lazy="true"
@hibernate.collection-one-to-many
class="br.gov.fnde.materialdidatico.inscricaolivros.Representacao"
insert="false" update="false" inverse="true"
@hibernate.collection-key-column 
name="AN_PROGRAMA"
name="NU_SEQ_DESTINO"
name="NU_SEQ_LIVRO"
name="NU_SEQ_PROG_ACAO_DISTR"

Ainda não consegui testar, mas se alguem tiver alguma dica, ficaria grato.

3 Respostas

passos

Ao inves de usar:

@hibernate.collection-key-column name = ""

utilize:

@hibernate.column name = ""
M

Do jeito que você colocou deu erro na validação do Container, eu fiz desta maneira;






<one-to-many
        class="br.gov.fnde.materialdidatico.remanejamento.Remanejamento"
      />
    </set>

A classe que tem o atributo [b]remanejamentoRecebido[b] tem uma PK composta de 4 colunas

Aparentemente funcionou, na questão do Mapeamento, mas gera o seguinte erro;

net.sf.hibernate.ObjectNotFoundException: No row with the given identifier exists: br.gov.fnde.materialdidatico.remanejamento.LivroPK@7530febb, of class: br.gov.fnde.materialdidatico.remanejamento.LivroDistribuido

M

A quem interessar, o mapeamento acima funcionou direitinho,
Obrigado ao Amigo que me respondeu de pronto imediato.

Quem precisar de Ajuda com Hibernate,oracle, PL/SQL e só me contactar.

O mapeamento correto;
@hibernate.set lazy=“true”
@hibernate.collection-one-to-many
class=“br.gov.fnde.materialdidatico.remanejamento.Remanejamento”
insert=“false” update=“false” inverse=“true”
@hibernate.collection-key
@hibernate.collection-key-column name=“AN_PROGRAMA”
@hibernate.collection-key-column name=“NU_SEQ_ORIGEM”
@hibernate.collection-key-column name=“NU_SEQ_LIVRO”
@hibernate.collection-key-column name=“NU_SEQ_PROG_ACAO_DISTR”

Criado 5 de julho de 2005
Ultima resposta 5 de jul. de 2005
Respostas 3
Participantes 2