图中的标号是一个Http请求开始到响应结束,服务器的执行顺序。
ActionContextCleanUp(可选):表示ActionContext由ActionContextCleanUp清除。
other filters可以写自己的filter或其他filter
FilterDispatcher是Struts的核心过滤器,开始执行doFilter方法。
ActionMapper:判断是否还需要经过action
如果需要经过action,则FilterDispatcher创建ActionProxy对象
ActionProxy:通过Configuration Manager将struts.xml配置文件加载,并初始化ActionProxy对象。
ActionProxy生成Action Invocation对象。
开始执行一系列的拦截器(包括自己定义的拦截器)。。。
执行action方法,到struts.xml检查返回结果对应的页面。
响应到客户端。
注:从Struts2.1.3开始,将不再使用FilterDispatcher作为核心过滤器,而是StrutsPrepareAndExecuteFilter,但Struts的原理一样。