code: Configuration loadConfig(ServletContext servletContext) {
          String handlers = servletContext.getInitParameter(ContextConfigParams.PARAM_HANDLERS);
          String layout = servletContext.getInitParameter(ContextConfigParams.PARAM_LAYOUT);
          String filters = servletContext.getInitParameter(ContextConfigParams.PARAM_FILTERS);
          String options = servletContext.getInitParameter(ContextConfigParams.PARAM_OPTIONS);
          String metaData = servletContext.getInitParameter(ContextConfigParams.PARAM_META_DATA);
          String properties = servletContext.getInitParameter(ContextConfigParams.PARAM_PROPERTIES);
  
          Configuration config = Configuration.INSTANCE;
          if (handlers != null && !handlers.equals("")) {
              config.setHandlers(new ReflectUtil<Handler>().getNewInstanceList(handlers.split(";")));
          }
          config.setLayout(new ReflectUtil<Layout>().getNewInstance(layout));
          if (filters != null && !filters.equals("")) {
              config.setFilters(new ReflectUtil<AuditEventFilter>().getNewInstanceList(filters.split(";")));
          }
          config.setCommands(options);
          config.setMetaData(new ReflectUtil<MetaData>().getNewInstance(metaData));
          if (properties != null && !properties.equals("")) {
              String[] propertiesList = properties.split(";");
              for (String property : propertiesList) {
                  String[] keyValue = property.split(":");
                  config.addProperty(keyValue[0], keyValue[1]);
              }
          }
          return config;
      }
docs: Load config.
  
  @param servletContext
  the servlet context
  @return the configuration