Spring Boot,Elastic Beanstalk 错误,IDE 没有问题



我目前正在使用持续集成来自动设置和配置服务器。不幸的是,当 Elastic Beanstalk Tomcat 8 初始化时,我遇到了问题。仅从AWS运行时,我才收到以下错误,它在我的IDE中运行良好:

Caused by: java.lang.NullPointerException: null
at org.springframework.security.config.annotation.web.builders.HttpSecurity.addFilterBefore(HttpSecurity.java:1112) ~[spring-security-config-3.2.5.RELEASE.jar:3.2.5.RELEASE]
at uk.co.thinkinnovate.security.WebSecurityConfig.configure(WebSecurityConfig.java:41) ~[WebSecurityConfig.class:na]
at org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter.getHttp(WebSecurityConfigurerAdapter.java:199) ~[spring-security

以及有问题的代码块:

@Override
protected void configure(HttpSecurity http) throws Exception {
    http.csrf()
            .disable()
            .addFilterBefore(tokenProcessingFilter(),
                    BasicAuthenticationFilter.class)
            .addFilterBefore(new SimpleCORSFilter(),
                    AuthenticationTokenProcessingFilter.class)
            .sessionManagement()
            .sessionCreationPolicy(SessionCreationPolicy.STATELESS)
            .and().exceptionHandling();
}
@Bean
public AuthenticationTokenProcessingFilter tokenProcessingFilter() {
    System.out.println("Getting token processing filter.");
    System.out.println(this.tokenBasedRememberMeService);
    return this.tokenBasedRememberMeService;
}

为什么TomCat版本没有自动连接tokenBasedRememberMeService,但我的Spring Boot应用程序是?

谢谢大家。

编辑:只是一个奇怪的说明:"获取令牌处理过滤器"仅在AWS应用程序中调用并且为空,而在IDE和Spring Boot中则不会出现。

我觉得我在这里错过了一些关键概念。

这个问题太简单了!

确保您的应用程序类extends SpringBootServletInitializer implements InitializingBean

最新更新