Ajout de version pour gérer la concurrence d'accès
Afin de mieux gérer la concurrence d'accès, j'ai ajouté un champ version dans un table. J'ai modifié le hbm.xml en conséquence et regénéré. J'obtient l'erreur suivante (l'appli fonctionne sans ces modifs) :
Code:
1 2 3 4
| 16 janv. 14:04:44 ERROR [http-8080-Processor24] fr.monappli.business.utilisateur.Utilisateurs - Utilisateurs - getUserByLogin - HibernateException
org.hibernate.PropertyAccessException: exception setting property value with CGLIB (set hibernate.cglib.use_reflection_optimizer=false for more info) setter of fr.monappli.business.utilisateur.Utilisateur.setVersion
at org.hibernate.tuple.PojoEntityTuplizer.setPropertyValuesWithOptimizer(PojoEntityTuplizer.java:215)
at org.hibernate.tuple.PojoEntityTuplizer.setPropertyValues(PojoEntityTuplizer.java:185) |
J'ai ajouté la ligne suivante dans le hibernate.cfg.xml (valeur true ou false ça ne change rien) :
Code:
<property name="hibernate.cglib.use_reflection_optimizer">false</property>
Utilisateur.hbm.xml
Code:
1 2 3 4 5 6
| <version
name="version"
column="uti_version"
type="long"
unsaved-value="null"
/> |
J'ai aussi enlevé les éléments de réflexivité mais ça ne change rien.