Yasser Zamani created WW-4874:
---------------------------------
Summary: Asynchronous action method
Key: WW-4874
URL: https://issues.apache.org/jira/browse/WW-4874
Project: Struts 2
Issue Type: New Feature
Components: Core Actions, Dispatch Filter
Reporter: Yasser Zamani
Fix For: 2.5.x
User will be able to return {{java.util.concurrent.Callable<String>}} in their
actions. Struts when sees such result, runs {{resultCode = result.call();}} in
it's own managed thread pool but exits from servlet's main thread with a null
result, i.e. gives back main thread to container and leaves response open for
concurrent processing. When {{resultCode = result.call();}} returned, Struts
calls {{javax.servlet.AsyncContext.dispatch()}} and {{resumes request
processing}} within a container's thread servlet to generate the appropriate
result for user according to {{resultCode}}.
This adds better support for SLS (Short request processing, Long action
execution, Short response processing) via Servlet 3's Async API.
Support of other cases like SSL (e.g. a download server) or LLL(e.g. a video
converter server) is still open.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)