I writing rest web services using spring framework 4.0 jars. All the get calls and post are working fine.

I wanted to know how to implement an api which works asynchronously. The client should post to this url and wait for the response ; something like call back mechanism between server and client . Server when gets the data posts response to this url.

Thanks in advance

有帮助吗?

解决方案

Spring 4.0 framework has an easy solution to this. Changed the Return type of the method DeferredResult . Create an instance of DeferredResult and assign whenever value is assigned to this instance it would return the response to calling request.

     @RequestMapping(method=RequestMethod.GET)
        public DeferredResult<String>  getNewMessage(HttpServletRequest request, HttpServletResponse response)
        {
            DeferredResult<String> deferredResult = new DeferredResult<String>();
            processRequest(deferredResult);         
            return  deferredResult;
        }

void processRequest( DeferredResult<String> result)
{
result.setResult("hello world");
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top