code: protected SparkApplication[] getApplications(final FilterConfig filterConfig) throws ServletException {
  
          String applications = filterConfig.getInitParameter(APPLICATION_CLASS_PARAM);
          SparkApplication[] solvedApplications = null;
  
          if (StringUtils.isNotBlank(applications)) {
              final String[] sparkApplications = applications.split(",");
  
              if (sparkApplications != null && sparkApplications.length > 0) {
                  solvedApplications = new SparkApplication[sparkApplications.length];
  
                  for (int index = 0; index < sparkApplications.length; index++) {
                      solvedApplications[index] = getApplication(sparkApplications[index].trim());
                  }
              } else {
                  throw new ServletException("There are no Spark applications configured in the filter.");
              }
          }
  
          return solvedApplications;
      }
docs: Returns the instances of {@link SparkApplication} which on which {@link SparkApplication#init() init()} will be called.
  Default implementation looks up the class names in the filterConfig using the key {@value #APPLICATION_CLASS_PARAM}.
  Subclasses can override this method to use different techniques to obtain an instance (i.e. dependency injection).
  
  @param filterConfig the filter configuration for retrieving parameters passed to this filter.
  @return the spark applications containing the configuration.
  @throws ServletException if anything went wrong.