Relacionamento 1..n Hibernate com annoations

Olá pessoal, gostaria que me ajudassem com o seguinte problema:

Tenho duas classes: Contato e Telefone. Um contato pode ter vários telefones, logo terei um relacionamento 1…n.
Já pesquisei na internet e não obtive muitos exemplos claros, a maioria que encontrei foi com mapeamentos xml.

Fiz assim:
//Entidade ContatoBean****

@Entity
@Table(name="contato")
public class ContatoBean implements java.io.Serializable{
    
    private Integer id;
    private String nome;
    private Date nascimento;
    private Collection<TelefoneBean> telefoneBean;

    @Id
    @GeneratedValue
    @Column(name="id")
    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    @Column(name="nascimento")
    @Temporal(value=TemporalType.DATE)
    public Date getNascimento() {
        return nascimento;
    }

    public void setNascimento(Date nascimento) {
        this.nascimento = nascimento;
    }

    @Column(name="nome")
    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }
    
    @OneToMany(mappedBy="contatoBean", fetch=FetchType.EAGER)
    @Cascade(org.hibernate.annotations.CascadeType.ALL)
    public Collection<TelefoneBean> getTelefoneBean() {
        return telefoneBean;
    }

    public void setTelefoneBean(Collection<TelefoneBean> telefone) {
        this.telefoneBean = telefone;
    }

}

//Entidade TelefoneBean*********

@Entity
@Table(name="telefone")
public class TelefoneBean implements java.io.Serializable{

    private Integer id;
    private String numero;
    private String codigoArea;
    private ContatoBean contatoBean;
    
    @Id
    @GeneratedValue
    @Column(name="id")
    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    @Column(name="numero")
    public String getNumero() {
        return numero;
    }

    public void setNumero(String numero) {
        this.numero = numero;
    }

    @Column(name="codigoarea")
    public String getCodigoArea() {
        return codigoArea;
    }

    public void setCodigoArea(String codigoArea) {
        this.codigoArea = codigoArea;
    }
    
    @ManyToOne(fetch=FetchType.EAGER)
    @JoinColumn(name="conid",insertable=true,updatable=true)
    @Fetch(FetchMode.JOIN)
    @Cascade(CascadeType.SAVE_UPDATE)
    public ContatoBean getContatoBean() {
        return contatoBean;
    }

    public void setContatoBean(ContatoBean contatoBean) {
        this.contatoBean = contatoBean;
    }
}

conid que está em @JoinColumn, no mapeamento de contatoBean na classe TelefoneBean, é o nome da chave estrangeira na tabela telefone referente a chave primária id da tabela contato.

Quando faço um debug, verifico que o contatoBean na classe TelefoneBean sempre está nulo.

Como posso realizar um relacionamento 1…n utilizando hibernate com annotations?

Wagner,

Acho que o link abaixo pode te ajudar.
http://www.caucho.com/resin-3.0/amber/tutorial/cmp-one2many/index.xtp

Abraço,
Wallfox