WordPress开网站很慢,新闻排版设计用什么软件,企业策划 企业网站建设 品牌设计,免费空间asp网站源码前言
略
用户任务中的执行监听器配置界面 监听器事件
用户任务中的执行监听器可以监听到的事件有#xff1a;
start#xff1a;开始时触发。end#xff1a;结束时触发。take#xff1a;执行时触发。
监听器执行方式
监听器的执行方式:
类#xff08;class#xff…前言
略
用户任务中的执行监听器配置界面 监听器事件
用户任务中的执行监听器可以监听到的事件有
start开始时触发。end结束时触发。take执行时触发。
监听器执行方式
监听器的执行方式:
类class需要配置实现了ExecutionListener接口的类。表达式Expression需要从Spring中获取对应的bean对象及要调用的相关的方法。委托表达式DelegateExpression需要从Spring容器中获取实现了ExecutionListener接口的实现类、
类class方式
类由 activiti 初始化。 因实现了 ExecutionListener 接口所以无需指定调用的方法。
表达式Expression方式
类已由 spring 初始化完成。表达式中是 bean 的名字。 因未实现 ExecutionListener 接口所以 activiti 不知道该调用哪个方法需要指定所需调用的方法。
示例
${updateInstanceUpdate.update()}updateInstanceUpdate 是 spring 中 bean 的名字。
委托表达式DelegateExpression方式
类已由 spring 初始化完成。 表达式中是 bean 的名字。 因实现了 ExecutionListener 接口所以无需指定调用的方法。
示例
${qingJiaUpdateStatusActivitiListener }qingJiaUpdateStatusActivitiListener 是 spring 中 bean 的名字。
传递参数
在执行监听器配置界面下半部分添加传递给监听器的参数。 可配置常量字符串和表达式
监听器中接收参数
Component(qingJiaUpdateStatusActivitiListener )
public class QingJiaUpdateStatusActivitiListener implements ExecutionListener {Overridepublic void notify(DelegateExecution execution) {/*绑定工作流的单据Key*/String key execution.getProcessInstanceBusinessKey();/*status*/Integer status this.getIntegerFieldValue(execution.getCurrentActivitiListener(), status);/*更新 status*/if (null ! status) {this.xxx.notifyUpdateStatus(id, status);}}protected String getFieldValue(ActivitiListener activitiListener, String fieldName) {ListFieldExtension listField activitiListener.getFieldExtensions();for (FieldExtension field : listField) {if (null ! fieldName fieldName.equals(field.getFieldName())) {return field.getStringValue();}}return null;}protected Long getLongFieldValue(ActivitiListener activitiListener, String fieldName) {String fieldValue this.getFieldValue(activitiListener, fieldName);return nullfieldValue?null:Long.valueOf(fieldValue);}protected Integer getIntegerFieldValue(ActivitiListener activitiListener, String fieldName) {String fieldValue this.getFieldValue(activitiListener, fieldName);return nullfieldValue?null:Integer.valueOf(fieldValue);}}参考
https://blog.csdn.net/m0_38001814/article/details/104197670