Also, I forgot to mention that the instance was suspended in an Exception Handler. Could that be the reason why it is not able to resume execution?
I could resume the execution using the following code, though:
instance.resume(); instance.signal(((Transition)instance.getRootToken().getNode().getArrivingTransitions().toArray(new Transition)));
Is this the best and only way to assume execution of a suspended instance?
Yes this is the way you should do it.