Servlets @WebFilter似乎忽略了包含的Javascript文件
(这是关于JavaEE/ServletsWebFilters的) 我目前正在尝试编写一个WebFilter,它捕获对web应用程序的每个请求 但是,我注意到WebFilter没有看到在Servlets @WebFilter似乎忽略了包含的Javascript文件,servlets,jakarta-ee,servlet-filters,Servlets,Jakarta Ee,Servlet Filters,(这是关于JavaEE/ServletsWebFilters的) 我目前正在尝试编写一个WebFilter,它捕获对web应用程序的每个请求 但是,我注意到WebFilter没有看到在标记中发出的请求 正在提供的HTML页面包含一个样式表。。。 web.xml文件包含以下映射: <filter-mapping> <filter-name>webjarFilter</filter-name> <url-pattern>/*</
标记中发出的请求
正在提供的HTML页面包含一个样式表。。。
web.xml
文件包含以下映射:
<filter-mapping>
<filter-name>webjarFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
webjarFilter
/*
我现在的问题是:
有人能告诉我为什么过滤器不能捕获应该从
标记生成的请求吗
意见和补充资料:
- 我正在使用JavaEE7在Wildfly 12上进行测试
- 直接打开Javascript文件将触发过滤器
- 当引用路径错误的Javascript文件时,过滤器会看到请求。只有包含正确路径的Javascript文件才不会被筛选器看到
<script src="/webjars/jquery/3.0.0/jquery.min.js"></script>
<script src="/webjars/popper.js/1.14.1/popper.min.js"></script>
<script src="/webjars/bootstrap/4.1.0/js/bootstrap.min.js"></script>
@WebFilter(filterName = "webjarFilter", urlPatterns = "/*")
public class WebJarFilter implements Filter {
private Logger logger = LoggerFactory.getLogger(getClass());
public void init(FilterConfig filterConfig) throws ServletException {
logger.info("Init");
}
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
logger.info("doFilter");
logger.info("ServletRequest: {}", servletRequest);
filterChain.doFilter(servletRequest, servletResponse);
}
public void destroy() {
logger.info("destroy");
}
}
<filter-mapping>
<filter-name>webjarFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>