Bonjour,

Dans mon application je gère des "profil" d'utilisateur par année. J'ai besoin de mettre à jour ces informations.
Par exemple, en 2012, Mr X avait une voiture verte et était chez l'assureur Machin.
En 2013, Mr X a toujours sa voiture verte mais il est chez l'assureur Truc.
En 2014, je voudrai que Mr X puisse mettre à jour son profil avec ses nouvelles informations.
Voici comment je procède :
1- je regarde si M. X a un "profil" pour 2014
2- si non je récupère le profil de 2013 et je fais un clone (mon profil est un entity) en changeant la date (cela me permet de conserver un historique)
3- je présente les données du "nouveau" profil 2014 (basée sur 2013) dans un formulaire afin que Mr X n'ai plus qu'à corriger les champs si besoin. (ça va plus vite et ça évite à l'utilisateur de tout retaper)
4- à la validation du formulaire, je mets à jour ma base de données
2bis- s'il a déjà un profil en cours et qu'il n'est pas arrivé à la dernière page, je lui présente les données pour qu'il fasse les mises à jour si besoin.

Comme il peut y avoir beaucoup de données, j'ai prévu de découper le process en plusieurs pages. Donc j'ai créé un profilType2 qui hérite de mon profilType de base et qui "remove" certain champ selon la page sur laquelle on est rendu, avec 2 boutons "prec" et "next" afin de naviguer sur les pages.
Mon souci est lié à la validation : quand je clone le dernier profil connu, j'ai parfois des champs qui ne satisfont pas la contrainte dans l'entity (genre le nombre de voiture ne peut pas être null). il ne pose pas de soucis pour le clone, persist et flush.
Par contre lors de la soumission du formulaire, il bloque car des champs ne valident pas et pourtant même si ces champs on été "remove", Pourquoi ? je pensais que si l'on faisait un remove il ne testait pas les champs remove ?
Merci de votre aide.