Struts2的工作流程图

当接收到一个httprequest
  Interceptor做一些拦截或者初始的工作
  当外部的httpservletrequest到来时
  初始到了servlet容器 传递给一个标准的过滤器链
  ActionContextCleanUp这个在集成插件方面非常有用
  Other filters(SitMesh,etc)
  调用FilterDispatecher会去查找相应的ActionMapper
  如果找到了相应的ActionMapper它将会将控制权限交给ActionProxy
  ActionProxy将会通过ConfigurationManager来查找配置struts.xml
  下一步将会 通过ActionInvocation来负责命令模式的实现(包括调用一些拦截Interceptor框架在调用action之前)
  一旦action返回,会查找相应的Result
  Result类型可以是 jsp或者freeMark 等
  这些组件和ActionMapper一起返回给请求的url(注意拦截器的执行顺序)
  响应的返回是通过我们在web.xml中配置的过滤器
  如果ActionContextCleanUp是当前使用的,则FilterDispatecher将不会清理
  sreadlocal ActionContext
  如果ActionContextCleanUp不使用,则将会去清理sreadlocals


Struts2的工作流程图 - Deylic - 风过往