IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Spring Java Discussion :

Spring propagation SUPPORTS


Sujet :

Spring Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 7
    Par défaut Spring propagation SUPPORTS
    Bonjour,

    J'ai une petite question sur les transactions spring. J'ai défini les transactions ainsi dans mon fichier xml :
    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
    20
     
    	<tx:advice id="txAdvice" transaction-manager="txManager">
    		<tx:attributes>
    			<tx:method
    				name="enregistrer*" 
    		      	isolation="READ_COMMITTED" 
    		      	propagation="REQUIRES_NEW"  
          			rollback-for="com.ffbb.fbi.technique.exceptions.BaseException" />
    			<tx:method
    				name="supprimer*" 
    		      	isolation="READ_COMMITTED" 
    		      	propagation="REQUIRES_NEW"  
          			rollback-for="com.ffbb.fbi.technique.exceptions.BaseException" />
    			<tx:method
    				name="*"
    				propagation="NEVER" 
    				read-only="true"
    		      	no-rollback-for="com.ffbb.fbi.technique.exceptions.BaseException" />
    		</tx:attributes>
    	</tx:advice>
    Et du coup lorsque dans un service on est dans une méthode enregistrer et que l'on souhaite appeler une méthode d'accès aux données quelqueconque située dans un autre service il y a plantage de l'application. Je souhaitais donc remplacer NEVER par SUPPORTS mais j'aimerais bien connaître les conséquences possible de l'utilisation de ce mode car ce n'est pas très clair pour moi.

    Merci beaucoup de votre aide

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 43
    Par défaut NEVER et SUPPORTS
    En effet NEVER interdit l'appel de ta méthode dans une méthode transactionnelle. Une exception est générées.
    SUPPORTS te permettra de bénéficier du mode transactionnel de la méthode appelante. Si la méthode appelante est transactionnelle, ta méthode en SUPPORTS bénéficiera de cette transaction (comme un REQUIRED en quelque sorte), si la méthode appelante n'est pas transactionnelle, alors ta méthode en SUPPORTS ne le sera pas non plus.

Discussions similaires

  1. Réponses: 0
    Dernier message: 12/05/2015, 23h30
  2. Question propagation advices Spring
    Par meo93 dans le forum Spring
    Réponses: 2
    Dernier message: 19/02/2008, 21h54
  3. [Java][Spring] Support d'aide à la certification Spring
    Par Hikage dans le forum Certifications
    Réponses: 1
    Dernier message: 29/01/2008, 14h04
  4. Réponses: 2
    Dernier message: 09/01/2008, 11h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo