code: private static AspectranWebService create(ServletContext servletContext, String aspectranConfigParam) {
          AspectranConfig aspectranConfig;
          if (aspectranConfigParam != null) {
              try {
                  aspectranConfig = new AspectranConfig(aspectranConfigParam);
              } catch (AponParseException e) {
                  throw new AspectranServiceException("Error parsing '" + ASPECTRAN_CONFIG_PARAM +
                          "' initialization parameter for Aspectran Configuration", e);
              }
          } else {
              aspectranConfig = new AspectranConfig();
          }
  
          ContextConfig contextConfig = aspectranConfig.touchContextConfig();
          String rootFile = contextConfig.getRootFile();
          if (!StringUtils.hasText(rootFile) && !contextConfig.hasAspectranParameters()) {
              contextConfig.setRootFile(DEFAULT_APP_CONFIG_ROOT_FILE);
          }
  
          AspectranWebService service = new AspectranWebService(servletContext);
          service.prepare(aspectranConfig);
          service.setDefaultServletHttpRequestHandler(servletContext);
  
          WebConfig webConfig = aspectranConfig.getWebConfig();
          if (webConfig != null) {
              applyWebConfig(service, webConfig);
          }
  
          setServiceStateListener(service);
          return service;
      }
docs: Returns a new instance of {@code AspectranWebService}.
  
  @param servletContext the servlet context
  @param aspectranConfigParam the parameter for aspectran configuration
  @return the instance of {@code AspectranWebService}