Ola,
estou tendo que fazer login duas vezes , na primeira ele me leva para a pagina de login novamente com a url http://localhost:8080/login?logout
Ola,
estou tendo que fazer login duas vezes , na primeira ele me leva para a pagina de login novamente com a url http://localhost:8080/login?logout
Olá Ariane. Mesma coisa aqui. Só estou conseguindo efetuar o login se, ao carregar a aplicação, ir manualmente e digitar a url no browser: localhost:8080/home. Neste caso, o Spring Security identifica que eu não estou logado e me redireciona para a página de login. Informo as credenciais e sou redirecionado para a página que havia tentado acessar, ou seja, /home. Agora, não entendi como fazer o redirecionamento quando acesso localhost:8080/login e informo as credenciais. Ocorre o mesmo que você descreveu.
Olá Ariane. Para resolver este comportamento é preciso adicionar uma nova configuração no Spring Security: .defaultSuccessUrl("/home", true)
O método todo ficará assim:
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests().anyRequest().authenticated()
.and()
.formLogin(form -> form
.loginPage("/login")
.defaultSuccessUrl("/home", true)
.permitAll()
)
.logout(logout -> logout.logoutUrl("/logout"));
}
A resposta está nesta aula a partir do minuto 6.
Espero ter ajudado.