JHipster – méthode update appelée plusieurs fois, impression de cache pas rafraichit

D’étranges erreurs peuvent apparaître lors de la mise à jour d’une entité JHipster : les anciennes valeurs sont écrites en base, et les nouvelles valeurs ignorées. Il peut s’agir d’un effet de bord très simple à corriger.

On peut croire d’abord à un problème de cache Hibernate qui ne serait pas rafraichit…
Puis on s’aperçoit que la méthode update de la ressource web est appelée plusieurs fois… Bizarre !

Eh bien c’est ce qui se produit lorsque plusieurs onglets sont ouverts sur la même application, dans un environnement de développement : BrowserSync, est activé par défaut pour le développement de la couche Angular de JHipster. Et BrowserSync synchronise vraiment bien tous les onglets, et soumet la requête d’update dans chaque onglet !

S’ensuivent des requêtes concurrentes, dont certaines vont utiliser l’ancienne valeur présente dans un des onglets, et écraser la nouvelle valeur en base.

Donc, un seul onglet ouvert par application!

Laisser un commentaire