Java 以编程方式标记Oracle BPEL任务已完成

Java 以编程方式标记Oracle BPEL任务已完成,java,oracle,bpel,Java,Oracle,Bpel,我正在使用Oracle BPEL Process manager,并将一项任务分配给一组用户。 我尝试使用Java类oracle.bpel.services.workflow.task.ITaskService.UpdateTaskOutput()将其标记为已批准。如果任务分配给一个单独的用户,这是可行的,但是如果任务分配给一组用户,我会收到一条关于未获取任务的错误消息 如果我使用oracle.bpel.services.workflow.task.ITaskService.acquireTas

我正在使用Oracle BPEL Process manager,并将一项任务分配给一组用户。 我尝试使用Java类oracle.bpel.services.workflow.task.ITaskService.UpdateTaskOutput()将其标记为已批准。如果任务分配给一个单独的用户,这是可行的,但是如果任务分配给一组用户,我会收到一条关于未获取任务的错误消息

如果我使用oracle.bpel.services.workflow.task.ITaskService.acquireTask()获取任务,则在尝试将其标记为已批准时会收到一条错误消息:“该任务已被其他用户获取”


有人能指出更改以编程方式分配给组的Oracle BPEL任务状态的示例代码吗?

当任务分配给多个用户时,请使用
UpdateTaskOutlets()
方法,而不是
UpdateTaskOutlets()
,未经事先获取,您无法批准分配给组的任务。否则,小组的哪个成员批准了该任务

第二个问题是,您正在使用一个用户获取任务,并尝试使用另一个用户批准它


要真正找到问题所在,您可以获取任务,然后转到meta db并搜索已获取任务的用户。我想这会让你更好地了解实际发生的事情

我在oracle.bpel.services.workflow.tas.ITaskService中没有看到这样的方法(对于Javadoc,请参阅)。这是其他类上的方法吗?如果有,哪一个?你能提供一个指向Javadoc的链接吗?