Hibernate -> Chave Composta com Relacionamento

Prezados,

Estou tentando mapear uma tabela com chave composta cujo um de seus campos e a chave primaria de outra tabela quando faço o deploy recebo o erro: net.sf.hibernate.MappingException: An association from the table cliente_cartao refers to an unmapped class: entidades.TipoCartao

Ex:


cliente_cartao
cod_cliente <pk>
cod_tipo <pk>
nro_cartao


tipo_cartao
cod_tipo <pk>
dsc_tipo

package entidades;


import java.io.Serializable;

/**
 * @hibernate.class table = "cliente_cartao"
 */

 public class ClienteCartao implements Serializable {
 	
 	private ClienteCartaoPK id;
 	private String numero;
 	private TipoCartao bandeira;

	/**
	 * @hibernate.many-to-one 	column = "cod_tipo"
	 * 							class = "entidades.TipoCartao"
	 * 							insert = "false"
	 * 							update = "false"
	 */
	public TipoCartao getBandeira() {
		return bandeira;
	}
	/**
	 * @param bandeira The bandeira to set.
	 */
	public void setBandeira(TipoCartao bandeira) {
		this.bandeira = bandeira;
	}
    /**
     * @hibernate.id 	column = "id"
     * 					type = "entidades.ClienteCartaoPK"
     */
	public ClienteCartaoPK getId() {
		return id;
	}
	/**
	 * @param id The id to set.
	 */
	public void setId(ClienteCartaoPK id) {
		this.id = id;
	}
	/**
     * @hibernate.property 	column = "nro_cartao" 
     * 						type = "java.lang.String" 
     * 						not-null = "true"
	 */
	public String getNumero() {
		return numero;
	}
	/**
	 * @param numero The numero to set.
	 */
	public void setNumero(String numero) {
		this.numero = numero;
	}
}
package entidades;

import java.io.Serializable;

public class ClienteCartaoPK implements Serializable {

 	private int codigoCliente;
 	private long tipo;
	
	/**
	 * @hibernate.property 		column = "cod_cliente"
	 * 							type = "int"
	 * 							not-null = "true"
	 */

	public int getCodigoCliente() {
		return codigoCliente;
	}
	/**
	 * @param codigoCliente The codigoCliente to set.
	 */
	public void setCodigoCliente(int codigoCliente) {
		this.codigoCliente = codigoCliente;
	}
	/**
     * @hibernate.property 		column = "cod_tipo"
     *  						type = "long"
     * 							not-null = "true" 
	 */
	public long getTipo() {
		return tipo;
	}
	/**
	 * @param tipo The tipo to set.
	 */
	public void setTipo(long tipo) {
		this.tipo = tipo;
	}
	
    /*
     * (non-Javadoc)
     * 
     * @see java.lang.Object#hashCode()
     */
    public int hashCode() {
        return (int) (this.getCodigoCliente() + this.getTipo());
    }

    /*
     * (non-Javadoc)
     * 
     * @see java.lang.Object#equals(java.lang.Object)
     */
    public boolean equals(Object obj) {
        return super.equals(obj);
    }
	
}
package entidades;

import java.io.Serializable;

/**
 * @hibernate.class table = "tipo_cartao" 
 */
public class TipoCartao implements Serializable {

    private int codigo;
    private String descricao;
	
	/**
	 * @hibernate.id 	column = "cod_tipo"
	 * 					type = "int"
	 */
	public int getCodigo() {
		return codigo;
	}
	/**
	 * @param codigo The codigo to set.
	 */
	public void setCodigo(int codigo) {
		this.codigo = codigo;
	}
	/**
	 * @hibernate.property 	column = "dsc_tipo" 
	 * 						type = "java.lang.String"
	 * 						length = "20"
	 */
	public String getDescricao() {
		return descricao;
	}
	/**
	 * @param descricao The descricao to set.
	 */
	public void setDescricao(String descricao) {
		this.descricao = descricao;
	}
}

Cara, eu tive um erro igualzinho mesmo, o pau era no xml, mas no meu caso foi qndo eu fui fazer o relacionamento no o nome da classe eu tinha escrito em minusculo, mas era em maiusculo, ve se num é um errozinho besta assim…
qualquer coisa poe os XML das classes ai

net.sf.hibernate.MappingException: An association from the table cliente_cartao refers to an unmapped class: entidades.TipoCartao

Com certeza o problema é que para o Hibernate a tabela TipoCartao não existe.

Vc pode nao ter criado o TipoCartao.hbm.xml, ou nao te-lo incluido no hibernate.cfg.xml ou entao apenas é um erro de grafia como citado acima.

[]´s