1.客户端(client)向服务器发送一个请求(request)。
2.容器(container)通过web.xml映射请求,并获得控制器(controller)的名字。
3.容器(container)调用控件器(StrutsPrepareAndExecuteFilter或FilterDispatcher)。
--Struts2.1以前调用FilterDispatcher。
--Struts2.1之后调用StrutsPrepareAndExecuteFilter。
4.控制器(controller)通过ActionMapper获得Action的信息。
5.控制器(controller)调用 ActionProxy。
6.ActionProxy读取struts.xml文件读取相应的action和interceptor stack的信息。
7.ActionProxy把request请求传递给ActionInvocation。
8.ActionInvocation依次调用action和interceptor。
9.根据action执行结果,产生result。
10.result信息返回到ActionInvocation。
11.产生一个HttpServletResponse响应,并返回给客户端。