+1 امتیاز
قبل در برنامه نویسی توسط (139 امتیاز)
سلام

چگونه در وایز می توان با توجه به taskid در یک instance مشخص کرد که آیا این task قبلا  complete شده است یا خیر؟ (در زمان completetask در برخی موارد ممکن است دو بار درخواست برای تکمیل task ارسال شود و میخواهیم قبل از throw شدن خطا مشخص شود که Task قبلا complete شده است به این دلیل که خطای throw شده این مورد را مشخص نمی کند)

متشکرم

1 پاسخ

0 امتیاز
قبل توسط (1.4هزار امتیاز)
انتخاب شده قبل توسط
 
بهترین پاسخ

می‌توانید این سرویس REST رو فراخوانی کنید:

/activiti/rest/runtime/tasks/{taskId}

اگر خطا داد (کد وضعیت 200 نبود)، به این معنی است که کار حذف شده است (به دلیل تکمیل کار یا لغو توسط boundary event).

یک متد کمکی هم وجود دارد که این سرویس را فراخوانی می‌کند:

@Inject ProcessExecutionServiceBuilder processExecutionServiceBuilder;

public TaskResponse findTaskById(String taskId) {
	return processExecutionServiceBuilder.create().trustedBpmClient().getTask(taskId);
}

 

سوالات مشابه

+2 امتیاز
1 پاسخ 551 بازدید
+1 امتیاز
0 پاسخ 392 بازدید
0 امتیاز
1 پاسخ 772 بازدید
0 امتیاز
2 پاسخ 781 بازدید
0 امتیاز
1 پاسخ 270 بازدید
+1 امتیاز
1 پاسخ 230 بازدید
+1 امتیاز
1 پاسخ 359 بازدید
...