struts.action.extension:该属性指定需要Struts 2处理的请求后缀,该属性的默认值是action,即所有匹配*.action的请求都由Struts 2处理。
web.xml中配置的filter中url-pattern配置为/* 也就是所有的请求都交给struts去处理。
他们有什么关系。是一样的吗?在线等答案。谢谢。
struts2过滤器对请求有什么作用。如果请求不是配置文件中的规定。struts2就不会去处理。但请求经过了过滤器这个步骤。此时过滤器有什么用。
追答过滤器要经过一个判断,不然他不知道你的请求是否会符合规定,
web.xml里面的过滤器配置只支持以下三种
① 完全匹配
/test/zhidao.action
② 目录匹配
/test/*
③ 扩展名匹配
*.action
看着第三种也符合我们的需求是吧,但是这种的扩展性不好,比如我们现在有一个这样的需求:
1、.do,.action扩展名的都要是struts2的请求,我们使用struts.action.extension,就可以达到,但是只使用web.xml里面的配置很难达到
2、如果我们只使用了3的过滤器的配置,我们现在又有一个需求,我们只需要过滤URL为/action/开头的,而扩展名又是action的,怎么办?这个时候我们使用2的目录匹配,加上struts.action.extension,也可以达到需求了
楼主加点分吧,嘿嘿
你说的我懂,但不是我问的。你再回答下我把分给你
当url-pattern配置为/*时,所有的请求都经过了struts2过滤器,但请求不是sturts配置文件中的访问方式(例如:action为后缀)那么此时struts2过滤器有什么作用, Struts tags are only usable when the request has passed through its servlet filter,i want to know like this. can you tell me another thing about that ?sorry, my computer can't use the Chinese = =!! 3q
当url-pattern配置为/*时,所有的请求都经过了struts2过滤器,但请求不是sturts配置文件中的访问方式(例如:action为后缀)那么此时struts2过滤器有什么作用
==========
没有作用,他就是来检查是否需要struts2进一步处理(是否是以action结尾的),如果不需要就不管了(如果不是action结尾的,就放行,交给容器如tomcat进一步处理)