Servlets @WebFilter似乎忽略了包含的Javascript文件

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>/*</

(这是关于JavaEE/ServletsWebFilters的)

我目前正在尝试编写一个WebFilter,它捕获对web应用程序的每个请求

但是,我注意到WebFilter没有看到在
标记中发出的请求

正在提供的HTML页面包含一个样式表。。。

web.xml
文件包含以下映射:

<filter-mapping>
    <filter-name>webjarFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

webjarFilter
/*
我现在的问题是: 有人能告诉我为什么过滤器不能捕获应该从
标记生成的请求吗

意见和补充资料:

  • 我正在使用JavaEE7在Wildfly 12上进行测试
  • 直接打开Javascript文件将触发过滤器
  • 当引用路径错误的Javascript文件时,过滤器会看到请求。只有包含正确路径的Javascript文件才不会被筛选器看到

看来我是自己想出来的

这实际上是Firefox行为的结果。 当从Chrome调用同一服务器时,过滤器会看到所有请求。 显然,Firefox中有一些适用于脚本的缓存机制

<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>