博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【spring】IllegalArgumentException Can not set field to $Proxy 在spring中使用事物或AOP遇到的错误...
阅读量:6509 次
发布时间:2019-06-24

本文共 3957 字,大约阅读时间需要 13 分钟。

今天在spring中使用事务时,遇到了这个问题,已启动tomcat就出错:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'diseasesQueryControl': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.ccnt.med.abservice.QueryService org.ccnt.med.control.DiseasesQueryControl.queryService; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'queryServiceImpl': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.ccnt.med.dao.TbDiseaseDao org.ccnt.med.servimpl.QueryServiceImpl.tbDiseaseDao; nested exception is java.lang.IllegalArgumentException: Can not set org.ccnt.med.dao.TbDiseaseDao field org.ccnt.med.servimpl.QueryServiceImpl.tbDiseaseDao to $Proxy9    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:285)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1074)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:580)    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)    at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:276)    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4791)    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5285)    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)    at java.util.concurrent.FutureTask.run(Unknown Source)    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)    at java.lang.Thread.run(Unknown Source)

解决方法:

在配置文件中加入proxy-target-class="true"

或者:

现在我的配置文件如下:

解释:

AOP使用的动态代理可以针对接口,也可以针对类。java的动态代理只能针对接口。

在用Spring的AOP时,默认动态代理是针对接口的,而我用的是针对类的,所以要加上proxy-target-class="true"

转载于:https://www.cnblogs.com/549294286/archive/2013/04/13/3019074.html

你可能感兴趣的文章
YAML基础语法
查看>>
聊聊Elasticsearch的ReleasableLock
查看>>
React Hook 实践小结
查看>>
flask学习笔记之flask-migrate
查看>>
win32——关机
查看>>
【转】Android开发之线程池使用总结
查看>>
行内元素和块级元素
查看>>
java 设计模式之桥梁模式
查看>>
[Java] 图说 注解
查看>>
js实现天小时分钟秒倒计时
查看>>
浅谈Tomcat服务器优化方法
查看>>
面向对象访问修饰符
查看>>
安装oracle出现环境不满足最低要求
查看>>
Java并发编程(一)并发特性
查看>>
css3 渐变实例2径向渐变
查看>>
Python通用编程 - 第四章:字符编码
查看>>
好程序员java教程分享+号与append的效率问题
查看>>
滚动字幕标记<marquee></marquee>
查看>>
Hadoop2搭建Federation+HA
查看>>
bzoj 1066: [SCOI2007] 蜥蜴
查看>>