It's not really elegant to force using another framework to solve a potential issue with process execution, even if it's a great framework like Apache Camel. That's why we've implemented an easier solution in Activiti, that will be part of version 5.16. Let's describe the potential issue shortly, before showing the new feature/solution.
With Activiti 5.16 it will be possible to make the second parallel join gateway (and also an inclusive gateway if you're using that gateway type) asynchronous as well. When you define the parallel gateway as an asynchronous and exclusive gateway no optimistic locking exception will occur anymore.
<parallelGateway id="gateway2" activiti:async="true"
So it's really simple now to deal with these kind of parallel behaviour issues and no Apache Camel route is needed anymore to solve it.
More good stuff is coming in Activiti 5.16. We expect to release it next week.