Spring Boot选择了错误的CorsFilter

时间:2019-10-08 19:38:45

标签: java spring spring-boot cors

我正在开发具有安全功能的Spring Boot Web应用程序。我依赖一个需要使用自定义Cors过滤器的库,但是我的应用程序会继续选择Spring Web Framework Cors过滤器,并呈现以下错误:

  

[错误]无法执行目标   org.springframework.boot:spring-boot-maven-plugin:2.0.5.RELEASE:run   (default-cli)在项目工具-服务上:发生异常   运行。 null:InvocationTargetException:使用以下命令创建bean时出错   类路径资源中定义的名称“ springSecurityFilterChain”   [org / springframework / security / config / annotation / web / configuration / WebSecurityConfiguration.class]:   通过工厂方法实例化Bean失败;嵌套异常为   org.springframework.beans.BeanInstantiationException:失败   实例化[javax.servlet.Filter]:工厂方法   'springSecurityFilterChain'抛出异常;嵌套异常为   org.springframework.beans.factory.BeanNotOfRequiredTypeException:Bean   名为“ corsFilter”的类型应为   'org.springframework.web.filter.CorsFilter',但实际上是类型   'com.myproj.sample.inf.sec.filter.CorsFilter'-> [帮助1]

我正在尝试在我的Application.java类中创建一个CorsFilter bean:

@Bean
public CorsFilter corsFilter() {
    return new CorsFilter();
}

但是,这给了我同样的错误。有没有办法使Spring Boot指向自定义的cors过滤器或禁用​​spring cors过滤器?

1 个答案:

答案 0 :(得分:0)

可能是因为名称相同。您可以尝试更改Application.java中使用的bean名称吗?