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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 ?