pb de configuration du transactionnel
Salut !
J'utilise Spring avec Hibernate 3. Outre la définition de ma sessionFactory Hibernate (qui n'a pas d'importance ici selon moi), j'ai défini les beans suivants :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| <bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<aop:config>
<aop:pointcut id="sequencerIntercept"
expression="execution(* com.rohan.sequencer.api.RohanSequencer.*(..))" />
<aop:advisor advice-ref="transactionSequencerAdvice" pointcut-ref="sequencerIntercept" />
</aop:config>
<tx:advice id="transactionSequencerAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="doInTransaction" propagation="REQUIRED" />
</tx:attributes>
</tx:advice> |
Mon problème : quand la méthode doInTransaction est appelée à l'extérieur de l'objet qui implémente l'Interface com.rohan.sequencer.api.RohanSequencer, pas de pb. Mais quand la méthode est appelée par l'objet qui implémente l'interface com.rohan.sequencer.api.RohanSequencer (i.e une méthode de l'objet de classe A appelle doInTransaction définie dans le même objet de classe A), alors mon transactionnel ne se fait pas. c'est comme si la configuration aop ne servait à rien...
Quelqu'un peut-il m'expliquer la raison de ce comportement ?
Cordialement,
Eric Lewandowski