JBPM 工作流在人工任务后没有向前推进

JBPM Workflow not moving forward after Human Task

我正在使用 jBPM 6.2.0。我有一个包含用户任务的小型工作流程。 我正在尝试通过 Java 客户端使用远程 API 完成任务。

以下是使用的代码。

TaskService taskService = connManager.getTaskService("admin", "admin");
taskService.start(4, "admin");

taskService.complete(4, "admin", null);

及相关方法

private RemoteRuntimeEngine getRuntimeEngine(String deployment, String user,
        String password) throws MalformedURLException {
    URL deploymentUrl = new URL("http://localhost:8080/jbpm-console/");
    return (RemoteRuntimeEngine) RemoteRuntimeEngineFactory
            .newRestBuilder().addUrl(deploymentUrl).addUserName(user)
            .addPassword(password).addDeploymentId("").build();
}



public TaskService getTaskService(String user, String password)
        throws MalformedURLException {
    // Establish Connection
    RemoteRuntimeEngine conn = getRuntimeEngine("", user, password);

    TaskService taskServcie = conn.getTaskService();

    return taskServcie;
}

我完成任务后,工作流程没有前进。就我而言,之后没有活动,所以我希望工作流程结束。

您需要在完成任务时指定正确的 deploymentId(而不是“”)。这意味着您可以在不指定 deploymentId 的情况下查询任务列表等,但要完成它,您需要使用正确的 'context'。可以从任务本身检索 deploymentId。

请注意,我们已经对 master 进行了一些改进,以确保如果您事先不知道 deploymentId 并且希望我们为您查找,您实际上可以传递 null 或 ""。但是对于6.2.0.Final你还是需要自己查一下。