Not sure if this is the "reccomended strategy", but in your EJB impl class,
simply forward all WS message objects to a queue.
Then, define an MDB that listens to that queue, and that handles each WS object in the
onMessage() function. That way, your WS messages will be delivered immediatly, but you
can do whatever you need to do with the objects at a later point as your MDB handles each
queue message.
The only downside here is that you can really only provide your WS caller with a return
message that indicates their WS message was received. If you wanted to reply to the
original WS message using the "queue in the middle", you'd need to define a
separate web-service on their end that accepts "replies" in an asynchronous
fashion.
So,
A --> Send WS Msg to B.
B places WS msg onto a queue.
MDB on B processes each message on the queue, then sends a new WS "reply" msg to
A, at some point into the future (1 minute, 1 hour, 1 day?).
B --> Send reply to A.
A places "reply" message onto its own queue, and processes it at some later
point.
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3964068#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...