[EJB-JPA-JTA] Transactions gérées par contener et Autocommit

Voir le sujet précédent Voir le sujet suivant Aller en bas

resolu [EJB-JPA-JTA] Transactions gérées par contener et Autocommit

Message  Jiraiya-08 le Mer 05 Jan 2011, 08:32

Bonjour,

Dans un projet EE, utilisant des beans de session pour les classes métier, j'utilise Java Persistence API avec EclipseLink 2.0 pour communiquer avec la base de données. La gestion des transaction étant effectuées par le conteneur EJB (Controler Transaction Management), je ne peux plus gérer les transactions au sein de mes méthodes. Nous avons vu qu'en mettant "@ApplicationException" sur l'Exception de notre métier, l'EJB reconnaissait une Exception de plus haut niveau, et annulait la transaction.

Cependant, dans une de mes méthodes, cela ne marche pas: après avoir lancé l'exception métier, toutes les insertions qui ont été faites via la méthode persist de l'EntityManager avant le throw restent en BD. Je me demande donc s'il n'y a pas un autocommit sur la connexion avec la BD, et le cas échéant, s'il n'y a pas un moyen d'empêcher cet autocommit, même localement.

Encore merci pour votre aide, et désolé de "flooder" fora...


Dernière édition par Jiraiya-08 le Lun 10 Jan 2011, 01:28, édité 1 fois

Jiraiya-08

Nombre de messages : 111
Age : 28
Prénom : Georges
Statut : Ancien - Promo 2010
Localisation : Rapture
Date d'inscription : 13/10/2007

Revenir en haut Aller en bas

resolu Re: [EJB-JPA-JTA] Transactions gérées par contener et Autocommit

Message  aro le Mer 05 Jan 2011, 09:26

Peut-être changer le type de transaction dans persistence.xml puis em.getTransaction().begin() suivi de commit (ou rollback si ça se passe mal) ?
Un lien...

aro

Nombre de messages : 557
Prénom : Anne
Statut : Prof
Date d'inscription : 06/09/2008

Revenir en haut Aller en bas

resolu Re: [EJB-JPA-JTA] Transactions gérées par contener et Autocommit

Message  Jiraiya-08 le Mer 05 Jan 2011, 10:28

Je viens de tester en mettant dans persistence.xml :

Code:
<persistence-unit name="SomeWare-ejbPU" transaction-type="RESOURCE_LOCAL">

Et mon projet ne voulait même plus se déployer sur le serveur... Shocked
Je vais réessayer ^^

Jiraiya-08

Nombre de messages : 111
Age : 28
Prénom : Georges
Statut : Ancien - Promo 2010
Localisation : Rapture
Date d'inscription : 13/10/2007

Revenir en haut Aller en bas

resolu Re: [EJB-JPA-JTA] Transactions gérées par contener et Autocommit

Message  aro le Mer 05 Jan 2011, 12:51

Jiraiya-08 a écrit:Je vais réessayer
Sinon, reste avec JTA et essaie la méthode setRollbackOnly() de EJBContext : ici

aro

Nombre de messages : 557
Prénom : Anne
Statut : Prof
Date d'inscription : 06/09/2008

Revenir en haut Aller en bas

resolu Re: [EJB-JPA-JTA] Transactions gérées par contener et Autocommit

Message  Contenu sponsorisé Aujourd'hui à 14:48


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum