I have the following pointcuts for transactions (using JPA/Hibernate 3.6)
lt;tx:advice id=quot;GlobalDataTxAdvicequot; transaction-manager=quot;GlobalDataTransactionManagerquot;gt; lt;tx:attributesgt;lt;tx:method name=quot;get*quot; no-rollback-for=quot;javax.persistence.NoResultException,javax.per sistence.NonUniqueResultException,org.springframew ork.dao.EmptyResultDataAccessExceptionquot;/gt;lt;tx:method name=quot;find*quot; no-rollback-for=quot;javax.persistence.NoResultException,javax.per sistence.NonUniqueResultException,org.springframew ork.dao.EmptyResultDataAccessExceptionquot;/gt;lt;tx:method name=quot;search*quot; read-only=quot;truequot; no-rollback-for=quot;javax.persistence.NoResultException,javax.per sistence.NonUniqueResultException,org.springframew ork.dao.EmptyResultDataAccessExceptionquot;/gt;lt;tx:method name=quot;remove*quot;/gt;lt;tx:method name=quot;save*quot;/gt;lt;tx:method name=quot;update*quot;/gt;lt;tx:method name=quot;add*quot;/gt;lt;tx:method name=quot;create*quot;/gt; lt;/tx:attributesgt; lt;/tx:advicegt;
lt;!-- bean post-processor for JPA annotations --gt;
lt;bean class=quot;org..orm.jpa.support.Persist enceAnnotationBeanPostProcessorquot; /gt;
lt;!-- Exception translation bean post processor --gt; lt;bean class=quot;org..dao.annotation.Persiste nceExceptionTranslationPostProcessorquot;/gt;
lt;aop:configgt; lt;aop:advisor advice-ref=quot;GlobalDataTxAdvicequot; pointcut=quot;execution(* com.foo.dao.*Dao.*(..))quot;/gt; lt;aop:advisor advice-ref=quot;GlobalDataTxAdvicequot; pointcut=quot;execution(* com.foo..*DataServiceImpl.*(..))quot;/gt; lt;aop:advisor advice-ref=quot;GlobalDataTxAdvicequot; pointcut=quot;execution(* com.foo..*SearchServiceImpl.*(..))quot;/gt; lt;aop:advisor advice-ref=quot;GlobalDataTxAdvicequot; pointcut=quot;execution(* com.foo..*DaoImpl.*(..))quot;/gt; lt;aop:advisor advice-ref=quot;GlobalDataTxAdvicequot; pointcut=quot;execution(* com.foo..*BusinessServiceImpl.*(..))quot;/gt; lt;/aop:configgt;
Now I have a case where I have a BusinessService class that has the following dependencies:
1) PersonDataService
2) ContactBusinessService 2.1) PersonDataService
So each of these classes and their methods have transaction advisor, will this cause some form of a recursive loop.
Here is what I get in the logs...not all...because it stack overflows:
rg..beans.factory.BeanCreationExcep tion: Error creating bean with name 'org.springfra
mework.transaction.config.internalTransactionAdvis or': Cannot resolve reference to bean 'org.springf
ramework.transaction.annotation.AnnotationTransact ionAttributeSource#0' while setting bean property
'transactionAttributeSource'; nested exception is org..beans.factory.BeanCreationExce
ption: Error creating bean with name 'org..transaction.annotation.Annota tionTransacti
onAttributeSource#0': Initialization of bean failed; nested exception is org..beans.f
actory.BeanCreationException: Error creating bean with name 'org..aop.support.Default
BeanFactoryPointcutAdvisor#0': Initialization of bean failed; nested exception is org.springframewor
k.beans.factory.BeanCreationException: Error creating bean with name 'org..aop.suppor
t.DefaultBeanFactoryPointcutAdvisor#1': Initialization of bean failed; nested exception is org.sprin
gframework.beans.factory.BeanCreationException: Error creating bean with name 'org..a
op.support.DefaultBeanFactoryPointcutAdvisor#2': Initialization of bean failed; nested exception is
org..beans.factory.BeanCreationExce ption: Error creating bean with name 'org.springfr
amework.aop.support.DefaultBeanFactoryPointcutAdvi sor#3': Initialization of bean failed; nested exce
ption is org..beans.factory.BeanCreationExce ption: Error creating bean with name 'org
..aop.support.DefaultBeanFactoryPoi ntcutAdvisor#4': Initialization of bean failed; ne
sted exception is org..beans.factory.BeanCreationExce ption: Error creating bean with
name 'org..aop.support.DefaultBeanFactor yPointcutAdvisor#5': Initialization of bean f
ailed; nested exception is org..beans.factory.BeanCreationExce ption: Error creating b
ean with name 'org..aop.support.DefaultBeanFactor yPointcutAdvisor#6': Initialization
of bean failed; nested exception is org..beans.factory.BeanCreationExce ption: Error c
reating bean with name 'org..aop.support.DefaultBeanFactor yPointcutAdvisor#7': Initia
lization of bean failed; nested exception is org..beans.factory.BeanCreationExce ption
: Error creating bean with name 'org..aop.support.DefaultBeanFactor yPointcutAdvisor#8
': Initialization of bean failed; nested exception is org..beans.factory.BeanCreation
Exception: Error creating bean with name 'org..aop.support.DefaultBeanFactor yPointcut
Advisor#9': Initialization of bean failed; nested exception is org..beans.factory.Bea
nCreationException: Error creating bean with name 'org..aop.support.DefaultBeanFactor
yPointcutAdvisor#10': Initialization of bean failed; nested exception is org..beans.f
actory.BeanCreationException: Error creating bean with name 'org..aop.support.Default
BeanFactoryPointcutAdvisor#11': Initialization of bean failed; nested exception is org.springframewo
rk.beans.factory.BeanCreationException: Error creating bean with name 'org..aop.suppo
rt.DefaultBeanFactoryPointcutAdvisor#12': Initialization of bean failed; nested exception is org.spr
ingframework.beans.factory.BeanCreationException: Error creating bean with name 'org.
.aop.support.DefaultBeanFactoryPointcutAdvisor#13' : Initialization of bean failed; nested exception
is org..beans.factory.BeanCreationExce ption: Error creating bean with name 'org.sprin
gframework.aop.support.DefaultBeanFactoryPointcutA dvisor#14': Initialization of bean failed; nested
exception is org..beans.factory.BeanCreationExce ption: Error creating bean with name
'org..aop.support.DefaultBeanFactor yPointcutAdvisor#15': Initialization of bean faile
d; nested exception is org..beans.factory.BeanCreationExce ption: Error creating bean
with name 'org..aop.support.DefaultBeanFactor yPointcutAdvisor#16': Initialization of
bean failed; nested exception is org..beans.factory.BeanCreationExce ption: Error crea
ting bean with name 'org..aop.support.DefaultBeanFactor yPointcutAdvisor#17': Initiali
zation of bean failed; nested exception is org..beans.factory.BeanCreationExce ption:
Error creating bean with name 'org..aop.support.DefaultBeanFactor yPointcutAdvisor#18'
: Initialization of bean failed; nested exception is org..beans.factory.BeanCreationE
xception: Error creating bean with name 'org..aop.support.DefaultBeanFactor yPointcutA
dvisor#19': Initialization of bean failed; nested exception is org..beans.factory.Bea
nCreationException: Error creating bean with name 'org..aop.support.DefaultBeanFactor
yPointcutAdvisor#20': Initialization of bean failed; nested exception is org..beans.f
actory.BeanCreationException: Error creating bean with name 'org..aop.support.Default
BeanFactoryPointcutAdvisor#21': Initialization of bean failed; nested exception is org.springframewo
rk.beans.factory.BeanCreationException: Error creating bean with name 'org..aop.suppo
rt.DefaultBeanFactoryPointcutAdvisor#22': Initialization of bean failed; nested exception is org.spr
ingframework.beans.factory.BeanCreationException: Error creating bean with name 'org.
.aop.support.DefaultBeanFactoryPointcutAdvisor#23' : Initialization of bean failed; nested exception
is org..beans.factory.BeanCreationExce ption: Error creating bean with name 'org.sprin
gframework.aop.support.DefaultBeanFactoryPointcutA dvisor#24': Initialization of bean failed; nested
exception is org..beans.factory.BeanCreationExce ption: Error creating bean with name
'org..aop.support.DefaultBeanFactor yPointcutAdvisor#25': Initialization of bean faile
d; nested exception is org..beans.factory.BeanCreationExce ption: Error creating bean
with name 'org..aop.support.DefaultBeanFactor yPointcutAdvisor#26': Initialization of
bean failed; nested exception is org..beans.factory.BeanCreationExce ption: Error crea
ting bean with name 'org..aop.support.DefaultBeanFactor yPointcutAdvisor#27': Initiali
Any help you can point me at would be great....thanks...jay |