Hibernate Xdoclet - composite-id ( Chave composta ), não consigo persistir as informações no banco

3 respostas
J

Galera estou tentando perstir as informações num banco ORACLE na seguinte estrutura:

TABLE (W_FILIALE)
ENTITE  VARCHAR   PK
LIBELLE VARCHAR   
DEVISE VARCHAR   PK

TABLE (W_ENTITE)
ENTITE_STOCK VARCHAR   
ENTITE_NEW VARCHAR

HBM:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hibernate-mapping PUBLIC
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN" 
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping
>
    <class
        name="com.XXX.XX.entities.Entity"
        table="W_FILIALE"
    >

        <composite-id class="com.XXX.XX.entities.Entity">
                     <key-property
                        name="name"
                        type="java.lang.String"
                        column="ENTITE"
                        length="10"
               		  />

                     <key-property
                        name="divise"
                        type="java.lang.String"
                        column="DEVISE"
                        length="3"
                      />
        </composite-id>

        <property
            name="literal"
            type="java.lang.String"
            update="true"
            insert="true"
            column="LIBELLE"
            length="50"
        />

        <!--
            To add non XDoclet property mappings, create a file named
                hibernate-properties-Entity.xml
            containing the additional properties and place it in your merge dir.
        -->

    </class>

</hibernate-mapping>

Alguma alma pra dar uma força?

3 Respostas

gilliard_santos

Eu faço assim…
Crio um bean representando a PK e nela eu mapeio as propriedades normalmente com @hibernate.property
Na classe do objeto que eu quero persistir eu coloco um atributo do tipo da entidade PK que eu criei e anoto com @hibernate.id unsaved-value=“any”

aí é só gerar os hbm’s

J

galera resolvido… era um outro hbm que estava dando pau…

J

gilliard_santos:
Eu faço assim…
Crio um bean representando a PK e nela eu mapeio as propriedades normalmente com @hibernate.property
Na classe do objeto que eu quero persistir eu coloco um atributo do tipo da entidade PK que eu criei e anoto com @hibernate.id unsaved-value=“any”

aí é só gerar os hbm’s

vlw irmão… mais resolvi com oque esta ai mesmo… era uma outra hbm impactando…

Criado 18 de janeiro de 2007
Ultima resposta 18 de jan. de 2007
Respostas 3
Participantes 2