Must have same number of columns as the referenced primary key
Bonjour,
Je ne suis pas un expert Hibernate. Je rencontre une erreur, et je pense que cela vient de ma configuration.
Pour simplifier, j'ai une table DE_GAR qui possède une clé étrangère vers DE_FORMUL, qui possède elle-même une clé composée.
Tout d'abord, je ne suis pas certain de la façon de déclarer une clé étrangère avec Hibernate. Voici mes fichiers de configuration :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
<hibernate-mapping package="com.bouygtel.agilassur.db">
<class name="DeFormul" table="DE_FORMUL">
<meta attribute="sync-DAO">false</meta>
<composite-id name="Id" class="DeFormulPK">
<key-property name="Codfor" column="CODFOR" type="string"/>
<key-property name="Datmdffor" column="DATMDFFOR" type="java.util.Date"/>
</composite-id>
[...]
</class>
</hibernate-mapping> |
Code:
1 2 3 4 5 6 7 8 9 10
|
<hibernate-mapping package="com.bouygtel.agilassur.db">
<class name="DeGar" table="DE_GAR">
[...]
<many-to-one name="Id" class="DeFormul" not-null="true">
<column name="Codfor" />
<column name="Datmdffor" />
</many-to-one>
</class>
</hibernate-mapping> |
Le problème est que j'obtiens ce message d'erreur :
Code:
1 2
|
org.hibernate.MappingException: Foreign key (FK780221FA19A8C6C8:DE_GAR [CODFOR])) must have same number of columns as the referenced primary key (DE_FORMUL [CODFOR,DATMDFFOR]) |