Aide sur les annotations Hibernate - @OneToMany
Bonjour,
Je viens de passer sur la maintenance d'un projet en J2EE, qui utilise les annotations Hibernate avec lesquels je ne suis pas familiarisé (mais je connais le mapping plus traditionnel).
Malgré toute mes recherches est des exemples qui correspondent à ce que j'ai fait, je n'arrive pas à mapper une nouvelle relation avec un @OneToMany bidirectionnel.
Voila des heures que je galère, je viens donc chercher votre aide pour me dire ce que je ne vois pas comme problème !
Alors en fait c'est à la base une relation de type many-to-many avec un attribut de classe, que j'ai donc transformer en relation One-to-Many<=>Many-To-One avec ma table de liaison, pour avoir mon attribut.
Voici mon code :
Classe Structure :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
[...]
public Collection<ITMODictionnary> ITMOs
@OneToMany(
targetEntity=ITMODictionnary.class,
mappedBy="structure",
fetch=FetchType.EAGER)
public Collection<ITMODictionnary> getITMOs() {
return ITMOs;
} |
classe ITMODictionnary :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
[...]
private Structure structure;
private DictionnaryValue ITMO;
@Id @ManyToOne
@JoinColumn(name = "ID_STRUCT")
public Structure getStructure() {
return structure;
}
@Id @ManyToOne(fetch=FetchType.EAGER)
@JoinColumn(name = "ID_ITMO")
public DictionnaryValue getITMO() {
return ITMO;
} |
Classe DictionnaryValue :
Code:
1 2 3 4 5 6 7 8
|
[...]
private Collection<ITMODictionnary> ITMOs;
@OneToMany(mappedBy="ITMO")
public Collection<ITMODictionnary> getITMOs() {
return ITMOs;
} |
J'ai aussi rajouté le mapping de la nouvelle classe dans le Hibernate.cfg.xml.
Et voici l'erreur Hibernate lors du démarrage de mon application :
Citation:
org.hibernate.AnnotationException:
mappedBy reference an unknown target entity property: xxx.model.dictionnary.ITMODictionnary.structure
in
xxx.model.structure.Structure.ITMOs
Où est le problème ?