Classe com chave primaria com relacionamento Hibernate

Tenho duas tabelas

Nota

[code]
@Id
private String nota_id;

@ManyToOne(fetch=FetchType.EAGER)
@JoinColumn(name="id_empresa", updatable=true, insertable=true)
@Fetch(FetchMode.JOIN)
@Cascade(CascadeType.SAVE_UPDATE)
private Empresa empresa;

@OneToMany(mappedBy="nota",fetch=FetchType.LAZY)
@Cascade(CascadeType.ALL)
private Collection<Itens> itens;[/code]

e a classe Itens

    @Id
    private String id_item_nota;

    @ManyToOne(fetch=FetchType.EAGER)
    @JoinColumn(name="id_item_nota", updatable=true, insertable=true)
    @Fetch(FetchMode.JOIN)
    @Cascade(CascadeType.SAVE_UPDATE)
    private Nota nota;

    @ManyToOne(fetch=FetchType.EAGER)
    @JoinColumn(name="id_item_empresa", updatable=true, insertable=true)
    @Fetch(FetchMode.JOIN)
    @Cascade(CascadeType.SAVE_UPDATE)
    private Empresa empresa;[/code]

O relacionamento com empresa esta ok pois ela só faz relacionamento OneToMany, agora a duvida esta na parte do Item pois o id_item_nota tem de ser chave primária e ao mesmo tempo faz um relacionamento ManyToOne com Nota.

Como eu faço esse relacionamento no hibernate? dessa maneira que eu fiz não vai funcionar pois o hibernate identifica duas colunas com o mesmo nome e retorna a seguinte exception
[code]Exception in thread "AWT-EventQueue-0" org.hibernate.MappingException: Repeated column in mapping for entity: br.com.otto.model.bean.Sfved3 column: ed3chave (should be mapped with insert="false" update="false")
        at org.hibernate.mapping.PersistentClass.checkColumnDuplication(PersistentClass.java:652)
        at org.hibernate.mapping.PersistentClass.checkPropertyColumnDuplication(PersistentClass.java:674)
        at org.hibernate.mapping.PersistentClass.checkColumnDuplication(PersistentClass.java:696)
        at org.hibernate.mapping.PersistentClass.validate(PersistentClass.java:450)
        at org.hibernate.mapping.RootClass.validate(RootClass.java:192)
        at org.hibernate.cfg.Configuration.validate(Configuration.java:1108)
        at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1293)
        at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:859)

Aproveitando o post e como eu faria por exemplo se a empresa e a nota fossem chaves primarias compostas e extrangeiras na classe item?

Obrigado.