@Bean
        @ConditionalOnMissingBean(name = WebApplicationService.BEAN_NAME_FACTORY)
        @RefreshScope(proxyMode = ScopedProxyMode.DEFAULT)
        public ServiceFactory<WebApplicationService> webApplicationServiceFactory(
            @Qualifier(UrlValidator.BEAN_NAME)
            final UrlValidator urlValidator,
            @Qualifier(TenantExtractor.BEAN_NAME)
            final TenantExtractor tenantExtractor) {
            return new WebApplicationServiceFactory(tenantExtractor, urlValidator);
        }
This is {@link CasWebApplicationServiceFactoryConfiguration}.

@author Misagh Moayyed
@since 5.1.0
core/cas-server-core-services/src/main/java/org/apereo/cas/config/CasWebApplicationServiceFactoryConfiguration.java