如何在基于XML的Spring配置文件中加载基于Java的SecurityConfig?

时间:2015-03-20 06:08:22

标签: java spring spring-security

我已经有了一个基于XML的Spring应用程序。我被要求将Spring Security集成到其中。我想使用基于Java的配置。我已根据此处的说明对其进行了初始化:Java Config但是我如何以及在何处加载SecurityConfig类。

我的web.xml是:

<context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/site.xml</param-value>
    </context-param>

    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>

我的SecurityWebApplicationInitializer是:

public class SecurityWebApplicationInitializer extends
AbstractSecurityWebApplicationInitializer {

}

我的SecurityConfig是:

@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.authorizeRequests().anyRequest().permitAll();
    }
}

1 个答案:

答案 0 :(得分:3)

您需要将@Configuration注释添加到SecurityConfig

@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

}

在spring配置XML文件中添加组件扫描标记:

<context:component-scan base-package="<yourPackageName>" />