有大神知道springboot在监听器中如何获取bean实例对象么??报错-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

有大神知道springboot在监听器中如何获取bean实例对象么??报错

爱吃鱼的程序员 2020-06-08 14:27:17 152

测试类是可以获取到messageService对象的,说明后期的注解没错,但是在监听器中

MessageService messageService = appctx.getBean(MessageServiceImpl.class);

报错

我想应该是servlet容器创建之前没有创建spring容器导致的,求大神支招

Java 容器 Spring
分享到
取消 提交回答
全部回答(1)
  • 爱吃鱼的程序员
    2020-06-08 14:27:32

    贴一下web.xml的配置看看呗,是不是你自己写的listener放到了spring的listener之前了

    回复 @Six_Penny:我这边就是在监听器中启动ice服务,要对ice服务的服务类进行spring容器管理回复 @leoyang203:我觉得你可以把你要做的事说明白会比较好,这样大家的思路能更广一些回复 @leoyang203:@PostConstruct这个注解可以在你生成bean之后做一些后续处理,就跟你调用完构造函数后再调用init函数一样 @Six_Penny回复 @Six_Penny:我试试看,不是非要这个能具体么?对这个@PostConstruct不熟啊

    @WebListener这个是servlet3的注解,它会在spring初始化之前初始化

    你可以用spring的@PostConstruct 注解加在某个方法之后

    你还继续实用WebListener肯定会报错不好意思,刚刚回复到那边去了,才看到,不过我用了@PostConstruct还是报错

    刚刚用了SpringApplicationRunListener这个接口也不行,然后现在用

    @PostConstruct

    去获取bean,还是不行

    SpringApplicationRunListener怎么使用的贴一下看看

    现在就只继承SpringApplicationRunListener,就报错

    Causedby:org.springframework.beans.factory.BeanCreationException:Errorcreatingbeanwithname'ice.listener.IceServer1':Initializationofbeanfailed;nestedexceptionisorg.springframework.beans.ConversionNotSupportedException:Failedtoconvertpropertyvalueoftype'ice.listener.IceServer1'torequiredtype'java.util.EventListener'forproperty'listener';nestedexceptionisjava.lang.IllegalStateException:Cannotconvertvalueoftype'ice.listener.IceServer1'torequiredtype'java.util.EventListener'forproperty'listener':nomatchingeditorsorconversionstrategyfound

    0 0
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题
推荐课程