I have tried a number of approaches, none of them work.
What have you tried? Asking politely? Shouting? Commanding? Begging? All of the above?
for task nodes just not signal the node but the task.. look at the testcases in the source how that is done, or simple deduce from the api
After some additonal effort, I did get this to work.
Users who are new to JBPM and have some database background can discern quite alot by looking at the database tables. In my case, this helped me find that I had two task instances: one in my model and one that I had been creating in code. Removing one of them was the first step in solving my problem.
Next, while we can step through nodes using RootToken.signal(), this does not seem to step us through the tasks in a task node. When working with tasks in a task node, it seems that it's best to use taskInstance.start() and taskInstance.end().
Finally, when working with blocking tasks in a task node named foo, it seems that one must get an instance of the task and use setBlocking(false) to avoid getting an IllegalStateException: task-node 'foo' still has blocking tasks when attempting to exit task node foo. This seems a bit weird to me, since it seems to imply that I am changing the model. I would have thought that starting and ending the task would have been adequate to allow movement through the graph. But, setting blocking to false was the only way I found to allow graph execution to proceed.
If anyone has other ideas, I would like to hear them.
please provide a unit test that demonstrates the problem (without the workarounds)