当我收到JMS消息时,如何继续Drools流过程?

当我收到JMS消息时,如何继续Drools流过程?,jms,drools,drools-flow,Jms,Drools,Drools Flow,我有一个非常简单的流程,JMS消息启动一个接收对象列表的进程。foreach遍历该列表,并向组件发送JMS消息以处理列表中的对象。此组件需要将完成通知发送回流程,以便继续。有人知道如何实现这一点吗 谢谢。您如何实现发送此邮件?是否使用自定义工作项节点?我看到两种选择: 如果您总是期望结果JMS消息,则可以让您的工作项处理程序在触发工作项节点时发送JMS消息,但仅在预期结果消息到达时完成工作项,这将使流程仅在收到结果消息时继续(例如,您可以将工作项id作为消息中的某种上下文参数发送,以便在结果返

我有一个非常简单的流程,JMS消息启动一个接收对象列表的进程。foreach遍历该列表,并向组件发送JMS消息以处理列表中的对象。此组件需要将完成通知发送回流程,以便继续。有人知道如何实现这一点吗


谢谢。

您如何实现发送此邮件?是否使用自定义工作项节点?我看到两种选择:

  • 如果您总是期望结果JMS消息,则可以让您的工作项处理程序在触发工作项节点时发送JMS消息,但仅在预期结果消息到达时完成工作项,这将使流程仅在收到结果消息时继续(例如,您可以将工作项id作为消息中的某种上下文参数发送,以便在结果返回时知道要完成哪个工作项)

  • 如果您还想处理更多意外的JMS消息(不一定是第一个请求JMS消息的结果),可以使用事件节点来处理,并使用JMS侦听器将传入的JMS消息(特定类型)转换为signalEvent(..)调用,然后继续从事件节点向前的流


Kris

如何实现发送此消息?使用自定义工作项节点?我看到两个选项:

  • 如果您总是期望结果JMS消息,则可以让您的工作项处理程序在触发工作项节点时发送JMS消息,但仅在预期结果消息到达时完成工作项,这将使流程仅在收到结果消息时继续(例如,您可以将工作项id作为消息中的某种上下文参数发送,以便在结果返回时知道要完成哪个工作项)

  • 如果您还想处理更多意外的JMS消息(不一定是第一个请求JMS消息的结果),可以使用事件节点来处理,并使用JMS侦听器将传入的JMS消息(特定类型)转换为signalEvent(..)调用,然后继续从事件节点向前的流

克里斯