3

メソッドが正常に実行された後、ヒューマン タスクのステータスが変化しない (まだ Ready 状態で表示されている)

private void claimTask(TaskClient taskClient, String taskOwnerName, TaskSummary task) {
BlockingTaskOperationResponseHandler operationResponseHandler = new BlockingTaskOperationResponseHandler();
taskClient.claim(task.getId(), taskOwnerName, operationResponseHandler);
logger.debug("clamed task status is: " + task.getStatus());

}

ロガーは、タスクがまだ準備完了状態にあると言います。ステータスは予約状態に移行する必要があります。

4

1 に答える 1

1

使用している TaskSummary オブジェクトは、基礎となるデータベースに直接リンクされていない切り離されたオブジェクトです。「クレーム」メソッドの実行後のデータベース内のタスクの最新の状態は反映されません。タスクの最新の状態については、次のように状態をログに記録する前に、最初に取得することをお勧めします。

private void claimTask(TaskClient taskClient, String taskOwnerName, TaskSummary task) {
  BlockingTaskOperationResponseHandler operationResponseHandler = new BlockingTaskOperationResponseHandler();
  taskClient.claim(task.getId(), taskOwnerName, operationResponseHandler);
  BlockingGetTaskResponseHandler getTaskHandler=new BlockingGetTaskResponseHandler();
  taskClient.getTaskById(task.getId(),getTaskHandler);
  logger.debug("claimed task status is: " + getTaskHandler.getTask().getStatus());
}
于 2015-05-16T05:53:36.027 に答える