Skip to content

Commit c3d623b

Browse files
committed
Update HandlerMappingIntrospector Usage in CORS support
Closes spring-projectsgh-16501
1 parent 3d5bc54 commit c3d623b

File tree

1 file changed

+5
-4
lines changed
  • config/src/main/java/org/springframework/security/config/annotation/web/configurers

1 file changed

+5
-4
lines changed

config/src/main/java/org/springframework/security/config/annotation/web/configurers/CorsConfigurer.java

+5-4
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import org.springframework.util.ClassUtils;
2525
import org.springframework.web.cors.CorsConfiguration;
2626
import org.springframework.web.cors.CorsConfigurationSource;
27+
import org.springframework.web.cors.PreFlightRequestHandler;
2728
import org.springframework.web.filter.CorsFilter;
2829
import org.springframework.web.servlet.handler.HandlerMappingIntrospector;
2930

@@ -110,12 +111,12 @@ private static CorsFilter getMvcCorsFilter(ApplicationContext context) {
110111
if (!context.containsBean(HANDLER_MAPPING_INTROSPECTOR_BEAN_NAME)) {
111112
throw new NoSuchBeanDefinitionException(HANDLER_MAPPING_INTROSPECTOR_BEAN_NAME, "A Bean named "
112113
+ HANDLER_MAPPING_INTROSPECTOR_BEAN_NAME + " of type "
113-
+ HandlerMappingIntrospector.class.getName()
114+
+ PreFlightRequestHandler.class.getName()
114115
+ " is required to use MvcRequestMatcher. Please ensure Spring Security & Spring MVC are configured in a shared ApplicationContext.");
115116
}
116-
HandlerMappingIntrospector mappingIntrospector = context.getBean(HANDLER_MAPPING_INTROSPECTOR_BEAN_NAME,
117-
HandlerMappingIntrospector.class);
118-
return new CorsFilter(mappingIntrospector);
117+
PreFlightRequestHandler mappingIntrospector = context.getBean(HANDLER_MAPPING_INTROSPECTOR_BEAN_NAME,
118+
PreFlightRequestHandler.class);
119+
return new CorsFilter((CorsConfigurationSource) mappingIntrospector);
119120
}
120121

121122
}

0 commit comments

Comments
 (0)