0

对于流程定义中的每个任务节点,我想动态地(以编程方式)向每个任务节点添加一个自我转换(从和转换到同一节点)。您能告诉我这可以作为 JBPM v3.2 的一部分来完成吗?如果我选择这种方法,是否会出现任何问题?

4

1 回答 1

1

您不需要动态地执行此操作。您可以直接在您的工作流程中执行此操作。

你是什​​么意思?当您正在部署工作流或已经在处理它时?

如果是在部署时,在调用 deployProcessDefinition 方法之前,您可以获取它将部署的 xml,并在进行部署之前对其进行编辑。

如果您已经在处理,我可以想到 2 个可能的选项:

  1. 如果您希望在进行自我转换时创建任务的新实例,则需要在数据库中进行一些修改以更改已部署的工作流程;
  2. 如果可以使用相同的任务实例,您可以更改 Transition.take 方法以在您将转换转移到同一任务时不传播事件。

对于这两个选项,您应该注意 ProcessLog 的问题。我不知道 JBPM 是否会在为实际上不存在的转换编写日志时遇到问题。

于 2010-10-15T11:54:49.403 回答