I can't say that I resolved the problem... I've just realized that I just postpone the error. But I'm still trying to understand it.
The solution for that problem is what Maciej said: the dispose is being done before the transaction end. Try to do it after the transaction end.
I've never worked with jbpm 5.2, but I'm thinking in give it a try, as I'm having some strange problems in 5.3 (which I'm currently investigating if the problem is my app or the jbpm5.3).