Problema com many-to-many no hibernate

bom dia pessoal, já estou com um problema faz dias!! vejam o meu mapeamento muitos pra muitos!

mapeamento de produto

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated 17/01/2008 21:24:30 by Hibernate Tools 3.2.0.beta8 -->
<hibernate-mapping>
    <class name="hello.SeProduto" table="se_produto" catalog="dba">
        <comment></comment>
        <composite-id name="id" class="hello.SeProdutoId">
            <key-property name="se14Produto" type="int">
                <column name="SE14_PRODUTO" />
            </key-property>
            <key-property name="se14MatGru" type="int">
                <column name="SE14_MAT_GRU" />
            </key-property>
        </composite-id>
        <many-to-one name="ssParametro" class="hello.SsParametro" update="false" insert="false" fetch="select">
            <column name="SE14_MAT_GRU" not-null="true">
                <comment></comment>
            </column>
        </many-to-one>
        <set name="seArmazems" inverse="true" table="se_estoq_armaz">
            <key>
                <column name="SE22_PRODUTO" not-null="true">
                    <comment></comment>
                </column>
                <column name="SE22_MAT_GRU" not-null="true">
                    <comment></comment>
                </column>
            </key>
            <many-to-many entity-name="hello.SeArmazem">
                <column name="SE22_ARMAZEM" not-null="true">
                    <comment></comment>
                </column>
                <column name="SE22_MAT_GRU" not-null="true">
                    <comment></comment>
                </column>
            </many-to-many>
        </set>
    </class>
</hibernate-mapping>

mapeamento armazem

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated 17/01/2008 21:24:30 by Hibernate Tools 3.2.0.beta8 -->
<hibernate-mapping>
    <class name="hello.SeArmazem" table="se_armazem" catalog="dba">
        <comment></comment>
        <composite-id name="id" class="hello.SeArmazemId">
            <key-property name="se06Armazem" type="int">
                <column name="SE06_ARMAZEM" />
            </key-property>
            <key-property name="se06MatGru" type="int">
                <column name="SE06_MAT_GRU" />
            </key-property>
        </composite-id>
        <many-to-one name="ssEmpresa" class="hello.SsEmpresa" update="false" insert="false" fetch="select">
            <column name="SE06_MAT_GRU" not-null="true">
                <comment></comment>
            </column>
        </many-to-one>
        <set name="seProdutos" inverse="true" table="se_estoq_armaz">
            <key>
                <column name="SE22_ARMAZEM" not-null="true">
                    <comment></comment>
                </column>
                <column name="SE22_MAT_GRU" not-null="true">
                    <comment></comment>
                </column>
            </key>
            <many-to-many entity-name="hello.SeProduto">
                <column name="SE22_PRODUTO" not-null="true">
                    <comment></comment>
                </column>
                <column name="SE22_MAT_GRU" not-null="true">
                    <comment></comment>
                </column>
            </many-to-many>
        </set>
    </class>
</hibernate-mapping>

Um armazém pode ter vários produtos e vice-versa. Só que existe uma tabela chamada Matriz de grupo, essa matriz de grupo, tem vários armazéns, e ela também tem vários produtos.
Acontece que o id de matriz de grupo, que é foreign-key tanto de armazem, quanto de produto; se tornou parte integrante da chave primária, tanto de armazém, quanto de produto!!

O erro fica apontando que eu tenho colunas duplicadas!! Alguém sabe como resolvo isso?!!