我正在使用jBPM 5.3.0,但是当我尝试为Human Task实现LocalTaskService时,我遇到了问题。
我试试这段代码:
org.jbpm.task.service.TaskService taskService = new org.jbpm.task.service.TaskService(getEntityManagerFactory(), SystemEventListenerFactory.getSystemEventListener());
SyncWSHumanTaskHandler syncWSHumanTaskHandler = new SyncWSHumanTaskHandler();
syncWSHumanTaskHandler.setLocal(true);
TaskService localTaskService = new LocalTaskService(taskService);
syncWSHumanTaskHandler.setClient(localTaskService);
getKnowledgeSession().getWorkItemManager().registerWorkItemHandler("Human Task", syncWSHumanTaskHandler);
但似乎不推荐使用SyncWSHumanTaskHandler。
所以我想知道是否有人在jBPM的最后一个版本中实现了它并且有一些样本。
谢谢,
答案 0 :(得分:1)
您始终可以找到显示功能的单元测试: https://github.com/droolsjbpm/jbpm/blob/master/jbpm-human-task/jbpm-human-task-core/src/test/java/org/jbpm/process/workitem/wsht/local/sync/WSHumanTaskHandlerLocalSyncTest.java 该测试显示了如何使用新类。我已在这里回答: https://community.jboss.org/message/738956
我们正在努力使所有实现与所有传输以及异步和同步实现的相同名称保持一致。新的Human Task WorkItemHandlers被调用: AbstractHTWorkItemHandler - > GenericHTWorkItemHandler& AsyncGenericHTWorkItemHandler - >然后是不同传输的具体实现:LocalHTWorkItemHandler,HornetQHTWorkItemHandler和Mina ......
使用LocalTaskService是可以的。 干杯