@Bean public SwaggerSpringMvcPlugin swaggerSpringMvcPlugin() { CustomModelPropertiesProvider propertiesProvider = new CustomModelPropertiesProvider(defaultModelPropertiesProvider, alternateTypeProvider, new CustomAccessorsProvider(typeResolver)); ModelDependencyProvider modelDependencyProvider = new ModelDependencyProvider(typeResolver, alternateTypeProvider, propertiesProvider); DefaultModelProvider modelProvider = new DefaultModelProvider(typeResolver, alternateTypeProvider, propertiesProvider, modelDependencyProvider); return new SwaggerSpringMvcPlugin(springSwaggerConfig) .modelProvider(modelProvider) .alternateTypeRules( new GenericAlternateTypeRule(ResponseEntity.class, 0, null, null), new GenericAlternateTypeRule(DeferredResult.class, 0, null, null), new GenericAlternateTypeRule(Future.class, 0, null, null), new GenericAlternateTypeRule(scala.concurrent.Future.class, 0, null, null)) .apiVersion(appVersion) .apiInfo(new ApiInfo(null, null, null, null, null, null)); }