code: public static void include(
          ServletRequest request,
          ServletResponse response,
          String relativePath,
          Writer out,
          boolean flush)
          throws IOException, ServletException {
  
          boolean dynacacheFlushCheck = Boolean.parseBoolean((String)request.getAttribute(WebContainerConstants.DYNACACHE_REQUEST_ATTR_KEY));
          //reg added || dynacacheFlushCheck to flush before include
          if ((flush || dynacacheFlushCheck) && !(out instanceof BodyContent))
              out.flush();
  
          // FIXME - It is tempting to use request.getRequestDispatcher() to
          // resolve a relative path directly, but Catalina currently does not
          // take into account whether the caller is inside a RequestDispatcher
          // include or not.  Whether Catalina *should* take that into account
          // is a spec issue currently under review.  In the mean time,
          // replicate Jasper's previous behavior
  
          String resourcePath = getContextRelativePath(request, relativePath);
          RequestDispatcher rd = request.getRequestDispatcher(resourcePath);
  
          rd.include(request, new ServletResponseWrapperInclude(response, out));
  
          //reg added to flush after include
          if (dynacacheFlushCheck && !(out instanceof BodyContent)) {
              out.flush();
          }
          
      }
docs: Perform a RequestDispatcher.include() operation, with optional flushing
  of the response beforehand.
  
  @param request The servlet request we are processing
  @param response The servlet response we are processing
  @param relativePath The relative path of the resource to be included
  @param out The Writer to whom we are currently writing
  @param flush Should we flush before the include is processed?
  
  @exception IOException if thrown by the included servlet
  @exception ServletException if thrown by the included servlet