+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 پاسخ 532 بازدید
+1 امتیاز
0 پاسخ 377 بازدید
0 امتیاز
1 پاسخ 707 بازدید
0 امتیاز
2 پاسخ 707 بازدید
0 امتیاز
1 پاسخ 264 بازدید
+1 امتیاز
1 پاسخ 218 بازدید
+1 امتیاز
1 پاسخ 342 بازدید
...