Assuming you are using persistence
Do not dispose your session.
Do not let your workflow reach an end event. For some reason the jpa persistent version appears to clear the timer from the session when it reaches an End Event.
At least this is my current understanding from my other unanswered question https://community.jboss.org/thread/201380?tstart=0