Alfresco,识别工作流何时开始

Alfresco, recognize when a workflow is started

我使用 Alfresco Community 5.2,我需要在默认的 Alfresco 工作流程之一启动时执行一些工作。

我可以覆盖所有工作流定义,但我想知道是否有更好更快的方法来做到这一点。完美的是在工作流启动时触发的行为。

有这样的吗? 接受任何其他方法。谢谢。

据我所知,没有任何类似于工作流行为的行为,但如果您的工作流始终附加文档,您可以考虑将行为绑定到工作流包类型(我不记得是手边的那种类型是什么——它可能只是 cm:folder,这不会那么有用。

这是一种 hack 建议,但您可以实施一个 quartz 作业,运行 每 30 秒或每分钟左右使用工作流服务检查是否有任何新的工作流自上次检查后开始。如果是这样,您的代码可能会收到通知并传递工作流 ID、进程 ID 等。

直接的解决方案就像您在原始 post 中建议的那样——只需使用工作流启动时触发的任务侦听器修改开箱即用的流程。

根据 Jeff 的建议和 this tutorial,我设法实现了一个任务 creation/completion 侦听器并在这些块中执行我的逻辑,解决了问题。