使用 Java API 时没有 activity 事件

No activity events when using the Java API

我正在使用带有 ActivitiEventListener 实现的 actviti,它处理 ACTIVTI_COMPLETED/TASK_CREATED 等事件

与流程实例通信时,我可以看到上述事件被触发(在 ACT_EVT_LOG table 中),但是当我通过 Java API, 不会触发任何事件(例如,发送边界事件捕获的消息时)。

下面是一段代码:

public static void main(String[] args) {
    readProperties();
    processEngine = buildProcessEngine();
    processEngine.getRuntimeService()
            .addEventListener(new ActivitiEventHandler("localhost", "61616"));
    new MessageSender(processEngine).sendMessage(args);
}

我在这里错过了什么?

万一有人遇到同样的问题 -

这是一个误解:我假设所有事件都会出现在 ACT_EVT_LOG table 中,却不知道有一个已注册的事件侦听器填充它。在 table 中没有看到预期的事件后,我认为 activiti 不会发送它们,而实际上它们已发送但没有任何指示。

所以我添加了以下行,这使得 activiti 填充 ACT_EVT_LOG:

runtimeService.addEventListener(new EventLogger(processEngine.getProcessEngineConfiguration().getClock()));