docs: private static void includeActionNoCache(
          CmsFlexController controller,
          PageContext context,
          String target,
          String element,
          Locale locale,
          ServletRequest req,
          ServletResponse res)
      throws JspException {
  
          try {
              // include is not cachable
              CmsFile file = controller.getCmsObject().readFile(target);
              CmsObject cms = controller.getCmsObject();
              if (locale == null) {
                  locale = cms.getRequestContext().getLocale();
              }
              // get the loader for the requested file
              I_CmsResourceLoader loader = OpenCms.getResourceManager().getLoader(file);
              String content;
              if (loader instanceof I_CmsResourceStringDumpLoader) {
                  // loader can provide content as a String
                  I_CmsResourceStringDumpLoader strLoader = (I_CmsResourceStringDumpLoader)loader;
                  content = strLoader.dumpAsString(cms, file, element, locale, req, res);
              } else {
                  if (!(req instanceof HttpServletRequest) || !(res instanceof HttpServletResponse)) {
                      // http type is required for loader (no refactoring to avoid changes to interface)
                      CmsLoaderException e = new CmsLoaderException(
                          Messages.get().container(Messages.ERR_BAD_REQUEST_RESPONSE_0));
                      throw new JspException(e);
                  }
                  // get the bytes from the loader and convert them to a String
                  byte[] result = loader.dump(
                      cms,
                      file,
                      element,
                      locale,
                      (HttpServletRequest)req,
                      (HttpServletResponse)res);
  
                  String encoding;
                  if (loader instanceof CmsJspLoader) {
                      // in case of JSPs use the response encoding
                      encoding = res.getCharacterEncoding();
                  } else {
                      // use the encoding from the property or the system default if not available
                      encoding = cms.readPropertyObject(
                          file,
                          CmsPropertyDefinition.PROPERTY_CONTENT_ENCODING,
                          true).getValue(OpenCms.getSystemInfo().getDefaultEncoding());
                  }
                  // If the included target issued a redirect null will be returned from loader
                  if (result == null) {
                      result = new byte[0];
                  }
                  content = new String(result, encoding);
              }
              // write the content String to the JSP output writer
              context.getOut().print(content);
  
          } catch (ServletException e) {
              // store original Exception in controller in order to display it later
              Throwable t = (e.getRootCause() != null) ? e.getRootCause() : e;
              t = controller.setThrowable(t, target);
              throw new JspException(t);
          } catch (IOException e) {
              // store original Exception in controller in order to display it later
              Throwable t = controller.setThrowable(e, target);
              throw new JspException(t);
          } catch (CmsException e) {
              // store original Exception in controller in order to display it later
              Throwable t = controller.setThrowable(e, target);
              throw new JspException(t);
          }
      }