Well.....
How about request builder ?
Client sends a request with a timeout of approx 5 minutes...
server starts a
thread for the rpc invocation
Server responds as and when required,
after 5 mins, client resends request...
problem with this approach:
server threads !!
advantages:
better than polling