日期:2014-05-17  浏览次数:20724 次

大家好,我刚遇到一个很奇怪的问题,求助啊

本帖最后由 linshow3 于 2012-5-7 23:07 编辑


* 这个问题可能与SPRING事务有关。
异常信息:::
Exception in thread "main" org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'mgrManager' must be of type [service.impl.MgrManagerImpl], but was actually of type [$Proxy1]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:349)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1079)
at tools.TestDao.main(TestDao.java:38)



*我只要把SPRING的事务配置删除掉就可以正常运行了。但是却无法使用事务了,有没有什么解决办法。

这是我在网上找到的同类异常情况。

Beannamed 'txAdvice' must be of type [org.aopalliance.aop.Advice], but was actually of type [org.springframework.transaction.interceptor.TransactionInterceptor]

但是网上的这个异常是jar包冲突,org.aopalliance.aop.Advice这个类是框架提供的,
我这个情况就是service.impl.MgrManagerImpl。这个类是我自己写的,应该不会有什么jar包冲突吧。 



xml部分配置
<bean id="managerTemplate" abstract="true" lazy-init="true"
                p:appDao-ref="appDao"
                p:attendDao-ref="attendDao"
                p:typeDao-ref="attendTypeDao"
                p:checkDao-ref="checkDao"
                p:empDao-ref="employeeDao"
                p:mgrDao-ref="managerDao"
                payDao-ref="payDao"/>

        <!-- 定义两个业务逻辑组件,继承业务逻辑组件的模板 -->
        <bean id="empManager"
                class="service.impl.EmpManagerImpl"
                parent="managerTemplate"/>
                
        <bean id="mgrManager"
                class="service.impl.MgrManagerImpl"