I’m running the Camunda Process Engine and interacting with it via the REST API. I’m able to deploy process definitions and kick of process instances with no problem. I’ve run thru manual tasks, service tasks, etc. all without issue.
However, I’m having problems with the message events. I’ve created a simple workflow with a Start → Message Intermediate Catch Event → End sequence. I kick off the process and can verify in the Cockpit that it’s running and sitting at the message catch event. I then use the REST API to query for the message event subscription:
The “test” is the name of the message as defined in the BPMN, as the GUID is my process ID. The response I get back is this:
{
“type”: “InvalidRequestException”,
“message”: “Message event subscription for execution ca6d6fff-9ca7-11e6-ad85-28d24460819d named test does not exist”
}
I’ve tried using the Message ID instead of the name, but no luck. I’ve also tried this with a Message Receive Task, but again, I get the message that no subscription for the message event exists. I’ve also tried triggering the event by POSTing the following:
I get the following response:
{
“type”: “RestException”,
“message”: “Cannot trigger message Test for execution ca6d6fff-9ca7-11e6-ad85-28d24460819d: Execution with id ‘ca6d6fff-9ca7-11e6-ad85-28d24460819d’ does not have a subscription to a message event with name ‘test’: eventSubscriptions is empty”
}
The response clearly seems to indicate that the process is not subscribed to any events, which seems wrong given I see that the process is clearly blocked at an message catch event node.
Am I misunderstanding the message event, or is this behavior expected? I’m assuming that I need to invoke the “trigger” API to satisfy this event and move the workflow forward. Any help would be appreciated.