flowable监听器中怎么获取当前流程的创建人
时间: 2024-03-03 13:48:08 浏览: 86
在 Flowable 中,可以通过实现 ExecutionListener 接口来监听流程的执行事件,其中包括流程实例的创建事件。在 ExecutionListener 中,可以通过 DelegateExecution 对象获取流程实例的相关信息,包括创建人。
具体地,可以通过 DelegateExecution#getVariable(String variableName) 方法获取流程实例中的变量。在创建流程实例时,可以将创建人信息以变量的形式存储在流程实例中,然后在 ExecutionListener 中通过该方法获取。
例如,在创建流程实例时,可以这样设置变量:
```
Map<String, Object> variables = new HashMap<>();
variables.put("createdBy", "张三");
runtimeService.startProcessInstanceByKey("myProcess", variables);
```
然后,在 ExecutionListener 中,可以这样获取创建人信息:
```
public class MyExecutionListener implements ExecutionListener {
@Override
public void notify(DelegateExecution execution) {
String createdBy = (String) execution.getVariable("createdBy");
System.out.println("流程创建人:" + createdBy);
}
}
```
需要注意的是,如果创建人信息是敏感信息,建议进行数据保护,如加密存储等。
阅读全文