2008-11-24 31 views
0

我正在使用Oracle BPEL流程管理器并将任务分配给一组用户。 我尝试使用Java类oracle.bpel.services.workflow.task.ITaskService.updateTaskOutcome()将其标记为已批准。如果将任务分配给单个用户,这将起作用,但如果将任务分配给一组用户,则会收到有关未获取任务的错误消息。以编程方式标记Oracle BPEL任务完成

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

任何人都可以指向示例代码来改变Oracle BPEL任务以编程方式分配给组的状态吗?

回答

1

使用updateTaskOutcomes()方法,而不是updateTaskOutcome()当它被分配给多个用户

+0

我在oracle.bpel.services.workflow.tas.ITaskService中看不到这样的方法(对于Javadoc,请参阅http://download.oracle.com/docs/cd/E12483_01/integrate.1013/b28985/ ORACLE/BPEL /服务/工作流程/任务/ ITaskService.html)。这是一个其他类的方法吗?如果是这样,哪个?你能否提供一个链接到Javadoc? – 2009-11-05 15:51:19

0

你的第一个问题似乎很明显,你不能批准自己被分配到一组没有首先获得一个任务。否则,该小组的哪个成员批准了这项任务?

您的第二个问题是您正在与一位用户获取任务并尝试与其他用户批准该任务。

要真正找到问题所在,您可以获取任务,然后转至元数据库并搜索已获取任务的人员。我想这会让你更好地了解实际发生的事情。