Hello,
Well in a clustered environment when a request is received one of the nodes will serve that request. If that node fails then it's up to the cluster to maintain the running session having it available to the other nodes and also redirect the next request to an available node. So then comes jbpm running on the other node that will try to handle that request. Since the data regarding the processes is persisted at a common datastore and the app server's session is maintained then the instance of jbpm within that session should be able to carry on.