Spring安全会话超时-Java

Spring安全会话超时-Java,java,spring,spring-security,Java,Spring,Spring Security,我的Spring安全性工作得很好,但经过一段afk时间后,当用户进入页面时,我开始收到大量异常 我注意到,会话和主体为空,这就是我得到错误500的原因 如何重新将该用户重定向到登录 或者我可以简单地删除会话超时(我真的不需要它) 如果要禁用会话,可以: @Override protected void configure(HttpSecurity http) throws Exception { // disable session http.sessionManagement(

我的Spring安全性工作得很好,但经过一段afk时间后,当用户进入页面时,我开始收到大量异常

我注意到,
会话和主体为空
,这就是我得到错误500的原因

如何重新将该用户重定向到登录

或者我可以简单地删除会话超时(我真的不需要它)


如果要禁用会话,可以:

@Override
protected void configure(HttpSecurity http) throws Exception {
    // disable session
    http.sessionManagement().disable()
        .authorizeRequests().antMatchers("/").hasAnyRole("Administrator" , "Member")
            .and()
            .formLogin()
                .loginPage("/login").permitAll()
                .defaultSuccessUrl("/dashboard",true)
                .failureUrl("/login?error")
                .successHandler(authenticationSuccessHandler)
            .and()
            .logout()
                .logoutUrl("/logout").permitAll()
                .logoutSuccessUrl("/login")
                .logoutSuccessHandler(logoutSuccessHandler)
            .and()
            .csrf().disable();
}
如果要将用户重定向到登录页面,可以尝试以下操作:

@Override
protected void configure(HttpSecurity http) throws Exception {
    // redirect user to login page
    http.sessionManagement().invalidSessionUrl("http://your.login.page").and()
        .authorizeRequests().antMatchers("/").hasAnyRole("Administrator" , "Member")
            .and()
            .formLogin()
                .loginPage("/login").permitAll()
                .defaultSuccessUrl("/dashboard",true)
                .failureUrl("/login?error")
                .successHandler(authenticationSuccessHandler)
            .and()
            .logout()
                .logoutUrl("/logout").permitAll()
                .logoutSuccessUrl("/login")
                .logoutSuccessHandler(logoutSuccessHandler)
            .and()
            .csrf().disable();
}
@Override
protected void configure(HttpSecurity http) throws Exception {
    // redirect user to login page
    http.sessionManagement().invalidSessionUrl("http://your.login.page").and()
        .authorizeRequests().antMatchers("/").hasAnyRole("Administrator" , "Member")
            .and()
            .formLogin()
                .loginPage("/login").permitAll()
                .defaultSuccessUrl("/dashboard",true)
                .failureUrl("/login?error")
                .successHandler(authenticationSuccessHandler)
            .and()
            .logout()
                .logoutUrl("/logout").permitAll()
                .logoutSuccessUrl("/login")
                .logoutSuccessHandler(logoutSuccessHandler)
            .and()
            .csrf().disable();
}