+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 پاسخ 756 بازدید
+1 امتیاز
0 پاسخ 470 بازدید
0 امتیاز
1 پاسخ 1.1هزار بازدید
0 امتیاز
2 پاسخ 997 بازدید
0 امتیاز
1 پاسخ 386 بازدید
+1 امتیاز
1 پاسخ 321 بازدید
+1 امتیاز
1 پاسخ 510 بازدید
...