docs: public static void registerServlets (@Nonnull final ServletContext aSC)
    {
      ValueEnforcer.notNull (aSC, "ServletContext");
  
      if (s_aInitialized.compareAndSet (false, true))
      {
        // Check SC version
        if (aSC.getMajorVersion () < 3)
          throw new IllegalStateException ("At least servlet version 3 is required! Currently running version " +
                                           aSC.getMajorVersion () +
                                           "." +
                                           aSC.getMinorVersion ());
  
        LOGGER.info ("Registering default ph-oton listeners and servlets");
  
        {
          final FilterRegistration.Dynamic aFilter = aSC.addFilter ("CharacterEncodingFilter",
                                                                    CharacterEncodingFilter.class);
          if (aFilter != null)
          {
            // Filter is new
            aFilter.setAsyncSupported (true);
            aFilter.setInitParameter (CharacterEncodingFilter.INITPARAM_ENCODING, StandardCharsets.UTF_8.name ());
            aFilter.setInitParameter (CharacterEncodingFilter.INITPARAM_FORCE_ENCODING, Boolean.TRUE.toString ());
            aFilter.addMappingForUrlPatterns (null, false, "/*");
          }
        }
  
        {
          final ServletRegistration.Dynamic aServlet = aSC.addServlet ("PhotonAjaxServlet", PhotonAjaxServlet.class);
          if (aServlet != null)
          {
            aServlet.setAsyncSupported (true);
            aServlet.addMapping (PhotonAjaxServlet.SERVLET_DEFAULT_PATH + "/*");
          }
        }
  
        {
          final ServletRegistration.Dynamic aServlet = aSC.addServlet ("PhotonAPIServlet", PhotonAPIServlet.class);
          if (aServlet != null)
          {
            aServlet.setAsyncSupported (true);
            aServlet.addMapping (PhotonAPIServlet.SERVLET_DEFAULT_PATH + "/*");
          }
        }
  
        {
          final ServletRegistration.Dynamic aServlet = aSC.addServlet ("StreamServlet", StreamServlet.class);
          if (aServlet != null)
          {
            aServlet.setAsyncSupported (true);
            aServlet.setInitParameter (AbstractObjectDeliveryHttpHandler.INITPARAM_ALLOWED_EXTENSIONS,
                                       AbstractObjectDeliveryHttpHandler.EXTENSION_MACRO_WEB_DEFAULT);
            aServlet.addMapping (StreamServlet.SERVLET_DEFAULT_PATH + "/*");
          }
        }
  
        {
          final ServletRegistration.Dynamic aServlet = aSC.addServlet ("UserStreamServlet", UserStreamServlet.class);
          if (aServlet != null)
          {
            aServlet.setAsyncSupported (true);
            aServlet.setInitParameter (AbstractObjectDeliveryHttpHandler.INITPARAM_ALLOWED_EXTENSIONS,
                                       AbstractObjectDeliveryHttpHandler.EXTENSION_MACRO_WEB_DEFAULT);
            aServlet.addMapping (UserStreamServlet.SERVLET_DEFAULT_PATH + "/*");
          }
        }
  
        {
          final ServletRegistration.Dynamic aServlet = aSC.addServlet ("UserUploadServlet", UserUploadServlet.class);
          if (aServlet != null)
          {
            aServlet.setAsyncSupported (true);
            aServlet.addMapping (UserUploadServlet.SERVLET_DEFAULT_PATH + "/*");
          }
        }
  
        {
          final ServletRegistration.Dynamic aServlet = aSC.addServlet ("LogoutServlet", LogoutServlet.class);
          if (aServlet != null)
          {
            aServlet.setAsyncSupported (true);
            aServlet.addMapping (LogoutServlet.SERVLET_DEFAULT_PATH + "/*");
          }
        }
  
        {
          final ServletRegistration.Dynamic aServlet = aSC.addServlet ("ResourceBundleServlet",
                                                                       ResourceBundleServlet.class);
          if (aServlet != null)
          {
            aServlet.setAsyncSupported (true);
            aServlet.setInitParameter (AbstractObjectDeliveryHttpHandler.INITPARAM_ALLOWED_EXTENSIONS, "js,css");
            aServlet.addMapping (ResourceBundleServlet.SERVLET_DEFAULT_PATH + "/*");
          }
        }
  
        {
          final ServletRegistration.Dynamic aServlet = aSC.addServlet ("GoServlet", GoServlet.class);
          if (aServlet != null)
          {
            aServlet.setAsyncSupported (true);
            aServlet.addMapping (GoServlet.SERVLET_DEFAULT_PATH + "/*");
          }
        }
  
        {
          aSC.addListener (PhotonStubServletContextListener.class);
        }
  
        LOGGER.info ("Finished registering default ph-oton listeners and servlets");
      }
    }