While this question is tagged Java, I'm afraid to say the best tool I've seen if you really have to go this route is Microsoft's BizTalk Server.
When I had to do an evaluation of this type of product (and this was a few years back) it was head and shoulders above the competition with the main features being:
- Visual Studio as the development environment
- nice visual tools to describe workflows and transformations
- extendable connector architecture used to connect to participants
- powerful workflow engine with great realtime reporting
In the end we choose to keep-it-simple and went the messaging route, although this does require you've got control of all the participants, which may not be the case.