I think you do a lot with routing here. Don't use action pipelining, but if no data is available, route to a wait service (which would be custom) which waits till data comes available. Then forward to service three.
Just seconding Kurt: the Action chaining is really within a single service, so a specific capability (or set). What you describe seems like 3 different components (clients or services) within the ESB.
Thanks for the reply, so quick!!
So, I try to create 3 services. In ServiceOne I create a rule to forward the message to either ServiceTwo (if data is ready) or WaitService (if data is not ready).
1 - A new call to service One wil create a new thread, which is independent from the first call. Is that correct?
2 - How can I define another service to notify the WaitService when the data is ready? i.e. using Notifier class !
How about the new BPM feature in 4.2 MR2?
The docs are incomplete as are the examples but it should give you what you are looking for. Plus, it will survive server reboots.