JPA - Relation bidirectionnel
Salut a tous^^
Tout d'abord je tiens a préciser que je ne sais pas si cette question a sa place ici ou plutôt dans la section ejb 3.0.
J'ai 2 classe : disons eleve et crayon.
La classe élève :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
@Entity
@Table(name=eleve)
class Eleve {
@id
private string id;
@OneToMany()cascade=CascadeType.ALL,mappedBy="eleve")
private List<crayon> crayons;
//Constructeur & Getter&setters classique |
Et la classe Crayon :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
@Entity
@Table(name=crayon)
class Crayon{
@id
private string id;
private string color;
@ManyToOne
private Eleve eleve;
//Constucteur & Getter&setters classique |
Dans ma couche service, quand je fais ceci :
Code:
1 2 3
| //définition d'une liste de crayon (crayons)
Eleve eleve = new Eleve(crayons);
em.persist(eleve); |
Tout fonctionne bien, la liste de crayon est bien cascadé dans la table crayon mais la clé etrangere eleve_id est null à la place d avoir l'id de l' eleve!
Est ce un comportement normal ?
Si oui (ou non d ailleurs) comment y remédier ?