I have a GUI client application that requires that I make 2 calls (with same parameters)for each message. One to cache/DB, the next to reformat message and pass it to another subsystem.
I was thinking of sending data for each message to 2 seperate MDBs to keep them asynchronous with client. I thought the message reformatting call could be sent from MDB through a stateless session bean (formatting done) and then on to another system. It would make a return back to GUi's return queue for an acknowledgement of success or failure.
The cache/DB message could be sent from MDB to another stateless session bean to apply some business rules, then go to cache/DB. Acknowledgement of success or failure would return to GUI's queue.