外部任务处理程序如何设置变量并让后续 activity 读取该变量?
How can an External Task Handler set a variable and let subsequent activity read this variable?
我有一个非常简单的三步工作流程,其中所有步骤都由外部任务处理程序处理。
在第一步 Erstelle Rechnung(创建发票)中,外部任务处理程序创建一个 PDF 文档并在完成时添加到流程中。
externalTaskService.complete(externalTask, Map.of("pdf", "pdf byte array");
如下图所示,变量 pdf 已写入 activity Erstelle Rechnung.
不幸的是,该变量对于后续 activity Bestätigungsemail an Mitglied schicken.
谁能帮我解决这个问题。我错过了什么?该变量是否应该在后续 activity 的层次结构中可见?
你遇到了什么问题 - 尝试使用变量 pdf 时出现 Nullpointer?
因为在突出显示 activity 时看不到变量并不意味着它不存在。正如您的屏幕截图所示 - pdf 在正确的范围内(如果您的流程是 'Ticketbestellung';)),因此它应该可用于下一个外部任务。
我的猜测是您在获取任务的方式上遇到了问题。 (也许您可以将此添加到您的问题中)
另一点让我感到奇怪的是,您如何将文件作为变量提供。我觉得应该是这样的
FileValue variableValue = Variables.fileValue(filename).file(byteContent).mimeType(mimeType).create();
Variables.createVariables().putValue("pdf", variableValue);
我有一个非常简单的三步工作流程,其中所有步骤都由外部任务处理程序处理。
在第一步 Erstelle Rechnung(创建发票)中,外部任务处理程序创建一个 PDF 文档并在完成时添加到流程中。
externalTaskService.complete(externalTask, Map.of("pdf", "pdf byte array");
如下图所示,变量 pdf 已写入 activity Erstelle Rechnung.
不幸的是,该变量对于后续 activity Bestätigungsemail an Mitglied schicken.
谁能帮我解决这个问题。我错过了什么?该变量是否应该在后续 activity 的层次结构中可见?
你遇到了什么问题 - 尝试使用变量 pdf 时出现 Nullpointer?
因为在突出显示 activity 时看不到变量并不意味着它不存在。正如您的屏幕截图所示 - pdf 在正确的范围内(如果您的流程是 'Ticketbestellung';)),因此它应该可用于下一个外部任务。
我的猜测是您在获取任务的方式上遇到了问题。 (也许您可以将此添加到您的问题中)
另一点让我感到奇怪的是,您如何将文件作为变量提供。我觉得应该是这样的
FileValue variableValue = Variables.fileValue(filename).file(byteContent).mimeType(mimeType).create();
Variables.createVariables().putValue("pdf", variableValue);