临近下班,帮同事查了个路径匹配的问题,在此简单记录。问题简化后如下,同事在 web.xml
中配置的路径匹配如下:
1 | <servlet-mapping> |
在 Spring MVC 中配置的注解为:@RequestMapping("/pc/**")
,请求接口 /pc/index.htm
时服务器响应状态码为 404,经过调试,调用栈帧如下:
1 | getPathWithinServletMapping:192, UrlPathHelper (org.springframework.web.util) |
关键的方法源码为:
1 | /** |
根据注释即可看出在我们的场景中到 Spring MVC 去查询 handler 方法使用的 path 为 index.htm
,导致匹配不到对应的 handler 方法。