+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 پاسخ 558 بازدید
+1 امتیاز
0 پاسخ 394 بازدید
0 امتیاز
1 پاسخ 793 بازدید
0 امتیاز
2 پاسخ 797 بازدید
0 امتیاز
1 پاسخ 274 بازدید
+1 امتیاز
1 پاسخ 234 بازدید
+1 امتیاز
1 پاسخ 359 بازدید
...