Bonjour !
Je travaille actuellement sur une application web utilisant JEE/EclipseLink et postgreSQL.
J'ai notamment à gérer des "Projets", des "Utilisateurs" et des "Droits" (droits d'accès du type "read", "write"...). La relation dans ma BDD est : un projet a plusieurs utilisateurs qui ont des droits sur le projet. J'ai donc une relation triple : Projet+Utilisateur+Droit.
Je suis face à un problème lors de la persistance de cette relation multiple... J'ai créé le projet avec toutes ses infos (ça fonctionne bien) puis je crée un ProjetUtilDroit (classe représentant l'association triple), je "set" le projet, l'utilisateur et le droit dans cette association et je l'ajoute à la List<ProjetUtilDroit> du projet. J'appelle ensuite la méthode "merge" sur le projet pour sauvegarder dans la BDD. A ce moment-là j'ai une exception :
J'ai affiché l'ID du projet et il est pourtant bien là...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 org.eclipse.persistence.exceptions.DatabaseException Internal Exception: org.postgresql.util.PSQLException: ERREUR: une valeur NULL viole la contrainte NOT NULL de la colonne « id_projet » Error Code: 0 Call: INSERT INTO projet_util_droit (id_droit, id_projet, id_utilisateur) VALUES (?, ?, ?) bind => [3 parameters bound]
Avez-vous une idée de ce qui peut poser problème ?
J'ai également tester de persister l'association elle-même plutôt que de mettre à jour le projet mais la même erreur apparaît.
Merci d'avance pour votre aide et n'hésitez pas à demander des précisions si ça n'est pas clair !!!
Partager