docs: private void init(
          String webInfRfsPath,
          String defaultWebApplication,
          String servletMapping,
          String servletContainerName,
          String webApplicationContext) {
  
          // WEB-INF RFS path
  
          webInfRfsPath = webInfRfsPath.replace('\\', '/');
          if (!webInfRfsPath.endsWith("/")) {
              webInfRfsPath = webInfRfsPath + "/";
          }
          m_webInfRfsPath = CmsFileUtil.normalizePath(webInfRfsPath);
  
          // default web application
          if (defaultWebApplication == null) {
              defaultWebApplication = "";
          }
          if (defaultWebApplication.endsWith("/")) {
              defaultWebApplication = defaultWebApplication.substring(0, defaultWebApplication.length() - 1);
          }
          if (defaultWebApplication.startsWith("/")) {
              defaultWebApplication = defaultWebApplication.substring(1);
          }
          m_defaultWebApplicationName = defaultWebApplication;
  
          // servlet mapping
          if (!servletMapping.startsWith("/")) {
              servletMapping = "/" + servletMapping;
          }
          if (servletMapping.endsWith("/*")) {
              // usually a mapping must be in the form "/opencms/*", cut off all slashes
              servletMapping = servletMapping.substring(0, servletMapping.length() - 2);
          }
          m_servletPath = servletMapping;
  
          // servlet container name
          if (servletContainerName == null) {
              m_servletContainerName = "";
          }
          m_servletContainerName = servletContainerName;
  
          // set the web application name
          File path = new File(m_webInfRfsPath);
          m_webApplicationName = path.getParentFile().getName();
  
          String contextPath = webApplicationContext;
          // whitespace is OK because e.g. on glassfish the "" context may be configured
          if (contextPath == null) {
              contextPath = m_webApplicationName;
              // this fixes an issue with context names in JBoss
              if (contextPath.endsWith(".war")) {
                  contextPath = contextPath.substring(0, contextPath.length() - 4);
              }
          }
          // set the context path
          if (contextPath.equals(getDefaultWebApplicationName()) || "".equals(contextPath)) {
              m_contextPath = "";
          } else {
              m_contextPath = "/" + contextPath;
          }
          // set the OpenCms context
          m_openCmsContext = m_contextPath + m_servletPath;
  
          // set the web application rfs path
          m_webApplicationRfsPath = path.getParentFile().getAbsolutePath();
          if (!m_webApplicationRfsPath.endsWith(File.separator)) {
              m_webApplicationRfsPath += File.separator;
          }
  
          // fill some defaults:
          m_releaseTagsAfterEnd = false;
          m_requestErrorPageAttribute = null;
          m_servletThrowsException = true;
          m_preventResponseFlush = false;
      }