Bonjour,
J'ai une question concernant l'opération de rollback dans JPA :
Pour bien expliquer mon interrogation je vais présenter un exemple :
J'ai une fonction dans la classe service qui persiste 2 objets différentes de 2 classes DAO :
Action N°1 persister une Personne :
Action N°2 mettre à jour un article :
Question :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 @Service("service") @Transactional public class ServiceImpl implements IService { ..... private void test() { .... //Action 1 Personne p = new Personne("toto",25); PersonneService.save(p); .... //Action 2 Article a = ArticleService.getArticleByName("XXX"); a.setVendeur(p); ArticleService.update(a); .... }
Comment faire en sorte que si l'action N°2 échoue, faire un rollback pour annuler l'action N°1 ?
Si j'englobe mon traitement dans un try catch, je remarque que le système sauvegarde quand même la personne même si la mise à jour de l'article échoue !
Merci de vos réponses.
Partager