当执行这个action的时候,这个Test3怎么也注入不进来,这个Test3在spring容器初始化的时候已经初始化了

解决方案 »

  1.   

    Test3 应该使用注解@Component
      

  2.   

    按理说没问题阿.....你的action是怎么生成的?也是Spring托管的么?
      

  3.   

    你试试手动写个<bean> 这个肯定可以的
    然后你看看你注入的bean在不在你列出的扫描包内。
    3楼的也试试,把Autowired 换成 Resource 试试。
      

  4.   

    谢谢大家了。
    回1楼,使用@Component和@Service,表面上虽然一般一个用控制层,一个业务层,但是作用是一样的,可以互换。
    我的action已经包含在context:component-scan里面包内了。按照2楼的提示,我加了struts2-spring-plugin-2.1.6.jar,果然注入进来了。
    我的理解是,这个插件队spring和struts承上启下,每个请求创建一个action实例,然后发现里面有@Autowired注解,然后这个插件就会将spring容器中对应的类型的bean给他注入进来。
      

  5.   

    刚尝试了下,这个action所在的包时没有必要加在context:component-scan 扫描包下的。该插件在action实例创建时能把spring托管的对应类型的bean给注入进来。
    昨天搞了一下午,新学spring,挺有意思的。谢谢大家。