StrutsPrepareAndExecuteFilter过滤器其实是包含2部分的
StrutsPrepareFilter:做准备
StrutsExecuteFilter:进入Struts2的核心处理。如果是Struts2的请求就会进入该过滤器,处理完后,不放行(由结果类负责显示)。如果是非Struts2的请求,比如默认jsp的请求,直接放行。
如果用不到其他过滤器,配置StrutsPrepareAndExecuteFilter即可;
如果用到其他过滤器,还需要使用Struts2准备好的环境,使用StrutsPrepareFilter,StrutsExecuteFilter2个过滤器,其他过滤器放在两者之间。

Struts2的请求——>可能先经过其他filter——>再由StrutsPrepareAndExcecuteFilter生成结果——>不会放行给后面的其他filter,如果继续放行,则会导致向web容器要求a.action,造成404错误

非Struts2请求——>可能经过其他过filter——>StrutsPrepareAndExcecuteFilter继续放行——>放行给后面的其他filter向web容器要求a.html

Struts2中实现了一种可以访问jar包或类路径下的静态资源(css、js等)的方式。

05-28 12:32