Olá Gujeiros, comecei a aprender Hibernate, estou tentando mapear uma tabela que possui uma chave primária concatenada com duas chaves estrangeiras, até o momento não encontrei a forma correta de mapear esta chave primária concatenada. Adicionei também uma imagem com a modelagem das tabelas. Segue o mapeamento que tentei fazer até o momento:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="br.bmweb.pojo">
<class name="Venda" table="TB_VENDA">
<id name="cod_funcionario" column="VE_COD_FUNCIONARIO">
<generator class="foreign">
<param name="property">TB_FUNCIONARIO</param>
</generator>
</id>
<id name="cod_orcamento" column="VE_COD_ORCAMENTO">
<generator class="foreign">
<param name="property">TB_ORCAMENTO</param>
</generator>
</id>
<id name="cod_cliente" column="VE_COD_CLIENTE">
<generator class="foreign">
<param name="property">TB_CLIENTE</param>
</generator>
</id>
<property name="data_venda" type="java.lang.Date">
<column name="VE_DATA_VENDA" />
</property>
<property name="data_fechamento" type="java.lang.Date">
<column name="VE_DATA_FECHAMENTO" />
</property>
<property name="status_venda" type="java.lang.String">
<column length="10" name="VE_STATUS_VENDA" />
</property>
<property name="valor_unitario" type="java.lang.Double">
<column name="VE_VALOR_UNIT" />
</property>
<property name="valor_total" type="java.lang.DOUBLE">
<column name="VE_VALOR_TOTAL" />
</property>
<property name="valor_desconto" type="java.lang.DOUBLE">
<column name="VE_VALOR_DESCONTO" />
</property>
<property name="tipo_venda" type="java.lang.String">
<column length="10" name="VE_TIPO_VENDA" />
</property>
<property name="tipo_pagamento" type="java.lang.String">
<column length="10" name="VE_TIPO_PAGAMENTO" />
</property>
<many-to-one name="orcamento" class="br.bmweb.pojo.Orcamento" column="VE_COD_ORCAMENTO" not-null="true"/>
<many-to-one name="cliente" class="br.bmweb.pojo.Cliente" column="VE_COD_CLIENTE" not-null="true"/>
<many-to-one name="funcionario" class="br.bmweb.pojo.Funcionario" column="VE_COD_FUNCIONARIO" not-null="true"/>
</class>
</hibernate-mapping>
Link com a imagem da modelagem das tabelas:
[url]http://img200.imageshack.us/img200/7094/23350719.png[/url]
Alguém sabe como fazer o mapeamento correto?