LocalTaskService don't remove the listeners that are created in: public void registerForEvent(EventKey key, boolean remove, EventResponseHandler responseHandler) { SimpleEventTransport transport = new SimpleEventTransport(taskServiceSession, responseHandler, remove); taskServiceSession.getService().getEventKeys().register(key, transport); } Notice that a client of this method can't remove it later, becouse the method return void. This method is called by SyncWSHumanTaskHandler.connect() private void registerTaskEvents() { TaskCompletedHandler eventResponseHandler = new TaskCompletedHandler(); TaskEventKey key = new TaskEventKey(TaskCompletedEvent.class, -1); client.registerForEvent(key, false, eventResponseHandler); key = new TaskEventKey(TaskFailedEvent.class, -1); client.registerForEvent(key, false, eventResponseHandler); key = new TaskEventKey(TaskSkippedEvent.class, -1); client.registerForEvent(key, false, eventResponseHandler); } See that the listeners aren't save to remove later. If don't remove the listeners, they are invoked later. PS: This can generate "Illegal method call. This session was previously disposed" - when a task is to be completed.
fix backported to branch 5.2.x
This issue has been marked as requires_doc_text, however, no text has been provided. Please provide the text so it can be added to the release notes document, or set the requires_doc_text flag to '-'. Thanks Lee
Hi Maciej, Thanks for providing the doc text. I've edited it for the release notes document. Do you mind taking a quick look to make sure I didn't garble the meaning in the edit. Thanks Lee
Lee, it's perfect
Verified on 5.3.1.BRMS-ER4.
Hi, we encounter this issue in version 5.4.0.FINAL. Is the fix included in this version?
This product has been discontinued or is no longer tracked in Red Hat Bugzilla.