请有人帮我,我需要在Filter级别验证struts 1的url操作映射。如果提供的url操作映射存在于Struts1中,那么也可以,否则显示404错误。这段代码显示404页面,但在显示之前我需要验证url:
p_hsResponse.sendError(HttpServletResponse.SC_NOT_FOUND);
根据您的评论,我认为验证struts操作映射的请求路径信息并不明智。
我建议您将Filter映射到Struts ActionServlet
映射到的<url-mapping>
。
示例:如果您的ActionServlet
映射到*.do
(后缀映射),则您的过滤器应映射到相同的。
<filter>
<filter-name>My filter</filter-name>
<filter-class>com.myApp.myFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>My filter</filter-name>
<url-pattern>*.do</url-pattern><!-- The same <url-pattern> to my Struts ActionServlet class
</filter-mapping>
这样,它将在struts ActionServlet调用之前/之后执行。