【问题标题】:SpringBoot - activiti - Injecting org.activiti.engine.TaskServiceSpringBoot - activiti - 注入 org.activiti.engine.TaskService
【发布时间】:2021-04-16 12:46:34
【问题描述】:

我已经创建了这个类:

public class ActivitiWorkflowService  {
    

    private final TaskService taskService;

..
}

但是我在初始化项目时遇到了这个问题:

     No qualifying bean of 
type 'org.activiti.engine.TaskService' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {}

【问题讨论】:

    标签: java spring spring-boot alfresco activiti


    【解决方案1】:

    我希望你的类有一个构造函数,例如:

    public class ActivitiWorkflowService  {
        
    
        private final TaskService taskService;
    
        public ActivitiWorkflowService(TaskService taskService) {
            this.taskService = taskService;
        }
    }
    

    您遇到的错误是因为 Spring 无法自动将此类连接到 ActivitiWorkflowService - 它可能未在 Spring 上下文中定义。

    根据您使用的配置,您可以:

    使用@Component@Service 注释定义类并让@ComponentScan 完成它的工作:

    @Component //@Service
    public TaskService {
    ...
    }
    

    或者如果你使用@Configuration类定义TaskService类型的bean

    @Configuration
    public class AppConfig {
        @Bean
        public TaskService taskService() {
             return new TaskService();
        }
        
        @Bean
        public ActivitiWorkflowService activitiWorkflowService(TaskService taskService) {
            return new ActivitiWorkflowService(taskService);
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-10-21
      • 2018-10-31
      • 2020-10-22
      • 1970-01-01
      • 2015-06-12
      • 2019-05-12
      • 1970-01-01
      相关资源
      最近更新 更多