整理一下Struts2 Process.
1.客户端发送http请求,request经过一系列的Filter(Filter有三层,ActionContextCleanUp,Other Filters,FilterDispather),而FilterDispatcher是struts2的控制器核心。
2.这时,FilterDispatcher会询问ActionMapper是否要调用Action,如果需要调用Action,则FilterDispatcher将请求的处理交给ActionProxy。
3.ActionProxy会通过Configuration Manager找到配置文件中对应的Action。
4.ActionProxy创建一个ActionInvocation实例,通过ActionInvocation通过动态代理调用对应的Action,在调用前后,ActionInvocation会根据配置文件,加载对应的Intecepter.
5.执行完Action后,ActionInvocation会根据配置文件找到对应的返回结果result,然后将返回结果response给客户端。