+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 پاسخ 528 بازدید
+1 امتیاز
0 پاسخ 374 بازدید
0 امتیاز
1 پاسخ 689 بازدید
0 امتیاز
2 پاسخ 693 بازدید
0 امتیاز
1 پاسخ 263 بازدید
+1 امتیاز
1 پاسخ 216 بازدید
+1 امتیاز
1 پاسخ 341 بازدید
...