mes _FK ne sont pas persistés dans ma base oracle
Bonjour,
j'ai un "client" qui a plusieurs "reservation" et quand je persiste le client, le champs "client_fk" n'est pas renseigné dans la table reservation alors que tous les autres champs le sont.
avez vous quelque chose à me proposer ?:lol:
la reservation :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
@Entity
@Table(name="reservations_services")
public class Reservation implements java.io.Serializable {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@ManyToOne(fetch=FetchType.EAGER)
@JoinColumn(name="client_fk",nullable=false)
private Client client;
.... |
le client :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
@Entity
@Table(name="clients_services")
public class Client implements java.io.Serializable {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@OneToMany(mappedBy="client", cascade=CascadeType.PERSIST, targetEntity=Reservation.class,fetch=FetchType.LAZY )
private List <Reservation>resas;
.... |
server : glassfish
ide : netbeans
je vais etre + precis sur le code
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
Client clientWithResas= null;
clientWithResas = new Client();
clientWithResas.setNom("toto");
clientWithResas.setPrenom("tutu");
clientWithResas.getResas().add(new Reservation(chambre1));
clientWithResas.getResas().add(new Reservation(chambre2));
clientWithResas.getResas().add(new Reservation(chambre3));
em.persist(clientWithResas); |
Il faut mettre dans Reservation une reference sur le client ?
Code:
1 2
|
clientWithResas.getResas().add((new Reservation(chambre1)).setClient(clientWithResas)); |
je ne penses pas ?