我创建了一个带有一些参数的自定义 WorkItem,我已经在 WorkDefinitions.wid 文件中注册了这些参数。然后在业务流程中,我还为整个流程创建变量定义,并将自定义 WorkItem 的 WD.wid 中的变量定义引用到在 BP 中创建的变量定义。
WorkItem 执行代码,该代码在启动流程后从表单中获取这些参数。为此,我使用 getParameter()- 方法;它看起来如下:
public void executeWorkItem(WorkItem workItem, WorkItemManager manager) {
String payload = workItem.getParameter("id") + ... ;
...
manager.completeWorkItem(workItem.getId(), null);
}
一切看起来和工作正常,因为 WorkItem 将成功执行并且我得到结果(在 BP 中执行 workItem 后在服务器端);但是现在我需要在使用输入的参数执行 POST 方法后获取响应。在代码中,我创建了一个新变量,该变量从响应正文获取参数,当我执行纯代码(没有 BPMN - 进程)时,我可以在 IDE 的控制台中看到结果,但我还需要在 WorkItem 中注册此变量以使用它进一步用于我的 BProcess 中的下一个任务。
所以我的问题是:是否有类似于 getParameter() 的方法,但类似于 setParameter()?我如何在 WorkItem 中注册它,以及如何在 jbpm 的 BProcess 中获取/到达那些参数/变量(我相信这是全局变量)。
非常感谢!