Skip to content

startProcessInstanceByMessage

Flowable 7.1.0 摘要:向处理引擎发出消息,表明已接收消息并启动新的ProcessIntance。

方法签名与说明

ProcessInstance startProcessInstanceByMessage ( String messageName)

向处理引擎发出消息,表明已接收消息并启动新的ProcessIntance。调用此方法可以具有两个不同的结果:如果消息名称与消息开始事件关联,则启动了一个新的进程实例。如果没有给定名称的消息订阅,则会抛出Flowable Exception Parameters:

  • MessageName-在BPMN20 <message name =“ Messagename” />元素上指定为属性的消息的“名称”。

Returns:

  • 代表启动过程实例的ProcessInstance对象

Throws:

  • Flowable Exception-如果没有给定名称的消息订阅

Since:

  • 5.9

ProcessInstance startProcessInstanceByMessage ( String messageName, String businessKey)

向处理引擎发出消息,表明已接收消息并启动新的ProcessIntance。请参阅StartProcessInstanceByMessage(String,Map)。此方法允许指定业务密钥。 Parameters:

  • MessageName-在BPMN20 <message name =“ Messagename” />元素上指定为属性的消息的“名称”。
  • BusinessKey-添加到启动过程实例中的业务密钥

Throws:

  • Flowable Exception-如果没有给定名称的消息订阅

Since:

  • 5.10

ProcessInstance startProcessInstanceByMessage ( String messageName, Map < String , Object > processVariables)

向处理引擎发出消息,表明已接收消息并启动新的ProcessIntance。请参阅StartProcessInstanceByMessage(String)。此外,此方法允许将消息的有效载荷指定为过程变量的地图。 Parameters:

  • MessageName-在BPMN20 <message name =“ Messagename” />元素上指定为属性的消息的“名称”。
  • processVariables-消息的“有效载荷”。将变量作为过程变量添加到启动过程实例中。

Returns:

  • 代表启动过程实例的ProcessInstance对象

Throws:

  • Flowable Exception-如果没有给定名称的消息订阅

Since:

  • 5.9

ProcessInstance startProcessInstanceByMessage ( String messageName, String businessKey, Map < String , Object > processVariables)

向处理引擎发出消息,表明已接收消息并启动新的ProcessIntance。请参阅StartProcessInstanceByMessage(String,Map)。此外,此方法允许指定业务密钥。 Parameters:

  • MessageName-在BPMN20 <message name =“ Messagename” />元素上指定为属性的消息的“名称”。
  • BusinessKey-添加到启动过程实例中的业务密钥
  • processVariables-消息的“有效载荷”。将变量作为过程变量添加到启动过程实例中。

Returns:

  • 代表启动过程实例的ProcessInstance对象

Throws:

  • Flowable Exception-如果没有给定名称的消息订阅

Since:

  • 5.9

常见使用场景

  • 创建新的流程实例,驱动业务工单生命周期。
  • 结合业务键、租户信息构建多租场景。
  • 官方摘要:向处理引擎发出消息,表明已接收消息并启动新的ProcessIntance。

Kotlin 调用示例

kotlin
val messageName = "MESSAGENAME"

runtimeService.startProcessInstanceByMessage(messageName)

注意事项

  • 启动流程前确认模型已部署且可用。
  • 建议传入业务键,方便后续查询定位。
  • 调用前请确认当前用户具备相应的任务/流程操作权限。
  • 本文基于 Flowable 7.1.0 Javadoc。

相关 API

  • startProcessInstanceByKey
  • startProcessInstanceById
  • startProcessInstanceByMessage