首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用事件名将数据从2个进程池的结果传输到第三个进程池,而无需在camunda中创建多个实例?

如何使用事件名将数据从2个进程池的结果传输到第三个进程池,而无需在camunda中创建多个实例?
EN

Stack Overflow用户
提问于 2021-11-22 10:49:58
回答 1查看 179关注 0票数 1

我在camunda中有3个进程池,通过使用Expression实现并使用事件名(A)实现将变量从第一个实例发送到第二个实例,并且我试图将第一个进程池变量发送到第二个、第三个进程池,并将第二个进程池结果发送到第三个进程池,基本上第三个进程池将接收来自第一个和第二个进程池的输入,但值不发送。如何通过只创建一个实例来实现这一点。我使用以下代码发送数据,并成功地在第二个进程池中接收到数据。

代码语言:javascript
复制
${execution.getProcessEngineServices().getRuntimeService().createMessageCorrelation("A").setVariable("A","A").correlateWithResult()}

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-24 19:08:42

好吧,我还是不知道你为什么能通过变量。

以下是我想出的解决办法:

几点意见:

  • 我使用您的表达式发送消息。我不确定是否可以在一次事件中发送2条消息。
  • 我使用了一个从B到C的信号,因为消息不起作用(我不知道为什么)。无论如何,您需要将信号或它匹配的消息关联起来(可以定义动态名称的信号)。

在这里证明它是有效的:

参见Gist:https://gist.github.com/pme123/22e7ab46f12218b7e399913af3115cf6

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70064589

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档