首页 > 解决方案 > 如何使用 UserTask 类将 TaskListeer 添加到用户任务?

问题描述

是否有将 TaskListener 添加到 UserTask.. 的示例文档?(Java 基础,使用 BpmnModel 类)

这是我的代码,它有运行时错误

UserTask userTask = new UserTask(); 
ActivitiListener activitiListener = new ActivitiListener();  
activitiListener.setEvent( TaskListener.EVENTNAME_COMPLETE ); 
activitiListener.setImplementation( 
  ImplementationType.IMPLEMENTATION_TYPE_CLASS ); 
activitiListener.setImplementation( "<my_package>.TestTaskListener" );  
userTask.getTaskListeners().add( activitiListener );

和错误

org.activiti.engine.ActivitiException: Errors while parsing:
[Validation set: 'activiti-executable-process' | Problem: 'activiti- 
usertask-listener-implementation-missing'] : Element 'class' or 'expression' 
is mandatory on executionListener - [Extra info : processDefinitionId = my- 
process | processDefinitionName = my dynamic process | | id = task1 | | 
activityName = First task | ] ( line: 6, column: 74)

标签: activitibpmn

解决方案


错误是您正在设置实现,但模式级别的验证正在“元素'类'或'表达式'在 executionListener 上是强制性的”。那么您的 XML 是什么样子的呢?你在设置这些属性吗?


推荐阅读