Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring security DataSourceInitializer:ApplicationEventMulticaster未初始化_Spring Security_Spring Boot - Fatal编程技术网

Spring security DataSourceInitializer:ApplicationEventMulticaster未初始化

Spring security DataSourceInitializer:ApplicationEventMulticaster未初始化,spring-security,spring-boot,Spring Security,Spring Boot,我正在使用带嵌入式数据库的SpringBoot1.2.0。 使用类路径中的schema.sql文件初始化数据库。 在我将@EnableGlobalMethodSecurity注释添加到WebSecurity配置类之前,它工作得很好 java.lang.IllegalStateException:ApplicationEventMulticaster未初始化从DataSourceInitializer.runSchemaScripts引发异常 有什么问题吗 代码如下: @Configuration

我正在使用带嵌入式数据库的SpringBoot1.2.0。 使用类路径中的schema.sql文件初始化数据库。 在我将@EnableGlobalMethodSecurity注释添加到WebSecurity配置类之前,它工作得很好

java.lang.IllegalStateException:ApplicationEventMulticaster未初始化从DataSourceInitializer.runSchemaScripts引发异常

有什么问题吗

代码如下:

@Configuration
@ComponentScan
@EnableAutoConfiguration
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

@EnableGlobalMethodSecurity(securedEnabled = true)
@Configuration
class WebSecurityConfiguration extends GlobalAuthenticationConfigurerAdapter {

    @Autowired
    DataSource dataSource;

    @Override
    public void init(AuthenticationManagerBuilder auth) throws Exception {
        auth.jdbcAuthentication().dataSource(dataSource);
    }
}

我认为解决方案是不使用
init
方法来设置JDBC身份验证。尝试使用扩展
globalaauthenticationconfigureradapter
并重写
config
方法的单独类。

如下所示
WebSecurityConfiguration
在主
应用程序的不同类中,对吗?
WebSecurityConfiguration
在不同类中。我还试图使它成为主应用程序的内部类。但是我得到了相同的异常。我将JDBC身份验证设置移动到
configure
方法,但是我得到了相同的异常。问题看起来与。所以我将DML移到schema.sql中。