When a process instance is canceled (ProcessInstance.end()), all tokens are canceled but the tasks created for the process instance are not, so users still see them. I had to create a new query method to retrieve all tasks that do not belong to an ended (canceled) process. However I'm not sure if this is the best way to resolve this problem. So, after analysing it a bit with my co-workers we decided to try to cancel the unfinished tasks for the canceled process instance. Unfortunetly, when the task is canceled, its end method is called and the task node to wich it belongs is signaled. I wanted to know your opinion about this situation. What is your interpretation of the end and cancel methods for these clases. Maybe I'm interpreting them the wrong way... or maybe there is actually no interpretation and I must adapt these methods to my needs.