Bonjour,

Voila j'ai un souci pour modifier un objet via JPA, explication :

BackingBean largement simplifié :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
public class Contact{
 
    @ManyToOne(cascade = CascadeType.PERSIST)
    @JoinColumn(name = "FK_SERVICE")
    private Service service = new Service();
 
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
public class Service{
 
    @OneToMany(cascade = CascadeType.PERSIST,mappedBy = "Service")
    private List<Contact> contacts = new ArrayList<>();
 
}
Je vais encore simplifier mais en gros je récupère un Contact de ma base de données (donc en même temps le service qui lui est associé) et je modifie l'ID du service (correspondant du coup à "FK_SERVICE").

Lorsque je tente un EntityManager.merge(Contact), "FK_SERVICE" n'est pas modifié en base.

A savoir que "Contact" contient des attributs (nom, prenom), si je les modifie, eux sont bien modifiés en base.

Je n'ai aucune erreur dans les Logs GlassFish.

De quoi cela peut-il venir ?

Merci d'avance