Flowable动态任务处理人+springboot bean注入为null

Flowable动态任务处理人+springboot bean注入为null

    最近有个需求,需要动态设定流程引擎的候选人,这种需求比较简单,网上资料也很多,我选择了 通过监听器设置,但是有个问题,审核人需要配合前端页面更改任务处理人.所以选择了审核人存储在数据库

1.flowable动态任务处理人

public class MyTaskListener implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
  String userId =userWorkflowMapper.getWorkFlow(processKey, jobName);
    // 因为需要多人审批,所以统一选择了候选人
delegateTask.addCandidateUser(userId);
}
}

  但是在使用过程中,userWorkflowMapper自动注入失败,需要解决该问题

2.解决spring boot bean注入为null问题

spring bean是什么?

  spring bean就是一个配置类,在使用过程中我们就是把配置类交给spring容器管理(也就是我们常说的ioc),这样就可以让我们的配置类在其他spring管理的类中通过注入的方式来进行使用。但是在注入的过程中也会遇到注入为null的现象

排查思路

  1.先要明确配置类是否被加载到spring容器中,比如是否加@Component注解

  2.因为我是Mapper自动导入不了,但是我在Service层测试调用是成功了,

  3.只是在MyTaskListener自动导入不了spring bean

解决办法

  使用手动加载bean的方式解决了问题

@Configuration
public class FlowableServiceConfig implements ApplicationContextAware {
    static ApplicationContext applicationContext;

    public static <T> T getBean(Class<T> clazz) {
        return applicationContext.getBean(clazz);
    }

    @Override
    public void setApplicationContext(ApplicationContext arg0) throws BeansException {
        if (applicationContext == null) {
            applicationContext = arg0;
        }
    }
}

flowable 6.4 是一个基于BPMN 2.0 标准的开源工作流引擎,而Spring Boot 是一个基于Java的,用于快速开发独立的、生产级的应用程序的框架。 flowable 6.4 的特点是: 1. 支持基于BPMN 2.0 标准的工作流程建模:flowable 6.4 遵循BPMN 2.0 标准,可以通过图形化界面进行工作流程建模,以及增加、修改和删除任务、事件、网关等流程元素。这样可以更加直观地定义和管理复杂的业务流程。 2. 提供强大的流程引擎:flowable 6.4 的流程引擎支持流程实例的创建、执行和监控等功能,可以对流程进行动态控制和优化。它还支持并行执行、异步操作和任务委托等特性,使得工作流程在多用户、多角色、多组织的环境下能够高效地运行。 3. 持久化和事务管理:flowable 6.4 提供了持久化和事务管理的功能,可以将流程数据存储到数据库中,并保证数据的一致性和完整性。它还支持基于JPA、Hibernate、MyBatis等持久层框架,以及JTA和Spring事务管理器等事务管理机制。 而Spring Boot 是一个使得开发者可以基于Spring框架快速开发独立的、生产级的应用程序的框架。其特点是: 1. 简化配置:Spring Boot 提供了一种约定优于配置的方式,通过自动配置和默认配置,可以大大简化应用程序的配置工作。开发者只需少量的配置,就可以快速创建、运行和部署应用程序。 2. 嵌入式服务器:Spring Boot 可以将应用程序打包成一个可以直接运行的JAR包,内嵌了Tomcat、Jetty或Undertow等Web服务器,无需额外安装和配置服务器环境。 3. 丰富的起步依赖:Spring Boot 提供了大量的起步依赖,可以快速集成常用的第三方库和工具,如数据库访问、消息队列、缓存等。开发者只需在配置文件中添加相应的依赖,就可以实现对这些功能的引入和使用。 综上所述,使用flowable 6.4 结合Spring Boot 可以快速开发、部署和管理基于BPMN 2.0 标准的工作流程应用。Spring Boot 简化了整个开发过程,提供了丰富的功能和依赖,使得应用程序的开发更加高效和便捷。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值