使用activiti的ExecutionListener监听器 spring 自动注入@Autowired为null

回答:
估计它的 ExecutionListener 实例是自己 new 或反射创建的,而不是用 Spring 创建好的,那就不会自动注入。
可以考虑把需要注入的 bean 声明为静态的,实现 ApplicationContextAware 接口在 setApplicationContext 方法里获取 bean 并赋值,这样每个实例都能使用,参考代码:
@Componentpublic class ___ implements ___, ApplicationContextAware {
    private static Service service;
    @Override
    public void setApplicationContext(ApplicationContext applicationContext) {
        service = applicationContext.getBean(Service.class);
    }
    @Override
    public void notify(___ ___) {
        service.update(___);
    }
}
回答:
他不是直接使用容器bean,所以最简单的方式就是通过ApplicationContextAware去获取bean
以上是 使用activiti的ExecutionListener监听器 spring 自动注入@Autowired为null 的全部内容, 来源链接: utcz.com/p/944542.html







