public void doFilter()

in log4j-jakarta-web/src/main/java/org/apache/logging/log4j/web/Log4jServletFilter.java [74:92]


    public void doFilter(final ServletRequest request, final ServletResponse response, final FilterChain chain)
            throws IOException, ServletException {
        if (request.getAttribute(ALREADY_FILTERED_ATTRIBUTE) != null) {
            chain.doFilter(request, response);
        } else {
            request.setAttribute(ALREADY_FILTERED_ATTRIBUTE, Boolean.TRUE);

            try {
                this.initializer.setLoggerContext();
                CURRENT_REQUEST.set(request);
                chain.doFilter(request, response);
            } finally {
                this.initializer.clearLoggerContext();
                CURRENT_REQUEST.remove();
                // Execute once per thread
                request.removeAttribute(ALREADY_FILTERED_ATTRIBUTE);
            }
        }
    }