开发者社区> 问答> 正文

Spring注入问题:报错

项目是SSH框架,写了一个service层,需要在两个地方调用,一个是filter过滤器,将数据存进去,一个是action,读取数据。在filter中,我是通过

SpringContextHolder.getApplicationContext().getBean(SecretAccessLogService.class)

的方式获取到service,说明一下,标注了@service注解,但是在action层通过autowire就是不能自动注入,总是报空指针错误,但是通过和filter同样的方法却能获取到。配置啥的基本没问题应该,因为其他地方没有出现过这样的问题,想请教一下各位,谢谢啦

展开
收起
kun坤 2020-06-06 17:10:15 530 0
1 条回答
写回答
取消 提交回答
  • 你应该是使用了父子容器,即在web.xml中配置了contextLoaderListener,还配置了DispatcherServlet。

    这种配置产生的问题是,只在contextLoaderListener配置的bean在DispatcherServlet中不起效果。

    具体可以看这里Spring父子容器

    ######struts2 还有DispatcherServlet 父子容器?######

    你都用一个方法取不可以吗?autowire用不了,我觉得是你配置有问题

    ######我都没有配置哎,其他模块正常,在老系统上面加的######

    @Autowire不能用的话,一般就是配置有问题,还有就是一楼说的父子容器问题,子容器可以获得父容器的配置,但是父容器不能获得子容器的配置,

    ######

    类上加注解@Component

    2020-06-06 17:10:19
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧 立即下载
微服务架构模式与原理Spring Cloud开发实战 立即下载
阿里特邀专家徐雷Java Spring Boot开发实战系列课程(第18讲):制作Java Docker镜像与推送到DockerHub和阿里云Docker仓库 立即下载

相关实验场景

更多