Java Servlet 入门: 问题系列:Filter request.getRequestDispatcher(url).forward(…,…)映射请求后404。


问题:

在进行代码编码路由映射时,发现映射后的请求总是404。

Java Servlet 入门: 问题系列:Filter request.getRequestDispatcher(url).forward(...,...)映射请求后404。

解决:

这问题卡了我一小时,经过研究后发现,是通过映射后的请求,默认不再经过过滤器导致的。

网上找到的解决方法是配置Xml:

<filter-mapping>
  <filter-name>myfilter</filter-name>
  <url-pattern>/mypath/*</url-pattern>
  <dispatcher>FORWARD</dispatcher>
  <dispatcher>REQUEST</dispatcher>
</filter-mapping>

而我不想要配置,经过思考和研究,这东西应该和注解是对应的:

于是,解决方法变成注解的方式:

@WebFilter(value="*",dispatcherTypes={DispatcherType.REQUEST,DispatcherType.FORWARD} )

这样处理后,映射后的请求可以再次被过滤器触发。

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/java/282315.html

(0)
上一篇 2022年8月26日 13:21
下一篇 2022年8月26日 13:42

相关推荐

发表回复

登录后才能评论