我已经做了一个要点,试图说明我想要解决的问题:
https://gist.github.com/jmcgill-public/e05d4378049296f05691
我有一个@Controller
的{{1}}值,以及一个匹配的urlPattern的@RequestMapping
。 Filter初始化,但不在相应的Controller方法上执行。
如果我将Filter的urlPattern更改为“/ *”,则Filter会执行(对于每个请求)。
为什么不对这些匹配的网址执行?
答案 0 :(得分:0)
回答我自己的问题,如果可以的话。
答案是,@ WebFilter中的urlPattern必须是根据HTTP的请求URL,这意味着它必须包含@ Controller的@RequestMapping路径之前的任何上下文路径。
这很不方便,但我不明白@WebFilters是javax.servlet.annotations,而不是org.springframework注释。所以我正在混合层和混合框架技术。