码迷,mamicode.com
首页 > 其他好文 > 详细

Could not generate CGLIB subclass of class[class X

时间:2014-08-29 18:37:48      阅读:476      评论:0      收藏:0      [点我收藏+]

标签:使用   io   ar   问题   cti   sp   on   c   编程   

Spring AOP 配置需要注意的问题,CGLIB


在生成aop代理类的时候,报错: Could not generate CGLIB subclass of class [class XXXX]: Common causes of this problem include using a final class or a non-visible class;

后经过检查,  原来在spring启动aop的配置里面是这样写的

1 <aop:aspectj-autoproxy proxy-target-class="true"/> 

2<tx:annotation-driven proxy-target-class="true" transaction-manager="txManager" />
这样的情况,Spring是采用CGLIB去代理,而采用此方式代理,是不可以面向接口编程的,也就是说要代理的类不可以实现接口,而且要想正常使用貌似还要加上一个默认构造函数.

所以,解决这个问题,用Spring默认的代理方式就可以了,配置改成

1 <aop:aspectj-autoproxy/>

2<tx:annotation-driven  transaction-manager="txManager" />

就OK了.


Could not generate CGLIB subclass of class[class X

标签:使用   io   ar   问题   cti   sp   on   c   编程   

原文地址:http://my.oschina.net/u/1455908/blog/308088

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!