Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Após login sou direcionado para arquivo de css

Após completar o login sou direcionado para meu arquivo css: http://localhost:8080/css/style.css.

Detalhe, na página de login meu arquivo de css não carrega, não sei porque e se eu mudar a url pra home funciona normal.

Este é meu Controller:

public class LoginController {
    @GetMapping
    @RequestMapping("/login")
    public String login() {
        return "login";
    }
}

Este é meu login.html:

<!DOCTYPE html>
<html lang="pt-br" xmlns:th="http://www.w3.org/1999/xhtml">
<head th:replace="~{bass/geral :: head}"></head>
<body>
<header>
    <nav class="navbar navbar-dark bg-primary">
        <div class="container-fluid nav-padding">
            <a class="navbar-brand text-cursivo" href="/home">Gumudi</a>
        </div>
    </nav>
</header>
<article>
    <div class="text-center">
        <h1 class="text-secondary mt-5 mb-4 text-cursivo fs-2">Preencha o formulário para fazer um login</h1>
    </div>

    <div class="container">
        <form th:action="@{/login}" method="post">
            <div class="form-group">
                <label for="username" class="form-label">Nome do produto</label>
                <input type="text" id="username" name="username" class="form-control" aria-describedby="passwordHelpBlock" placeholder="Usuário">
                <div class="form-text">
                    Digite o nome do usuário
                </div>
            </div>
            <div class="form-group">
                <label for="password" class="form-label">Nome do produto</label>
                <input type="password" id="password" name="password" class="form-control" aria-describedby="passwordHelpBlock" placeholder="Senha">
                <div class="form-text">
                    Digite a senha do usuário
                </div>
            </div>
            <button type="submit" class="btn btn-primary mt-4">Login</button>
        </form>
    </div>
</article>
<footer th:replace="~{bass/geral :: footer}"></footer>
</body>
</html>

Alguém pode me ajudar por favor?

2 respostas
solução!

Após o login, vc é redirecionado para a URL que vc tentou acessar antes de estar autenticado. No seu caso, seu navegador tentou internamente acessar o seu arquivo CSS, por isso vc é redirecionado para ele.

Pra liberar, vc tem que incluir no seu configure. Algo assim:

@Override
    protected void configure(HttpSecurity http) throws Exception {
        http
                .authorizeRequests()
                .antMatchers("/css/**", "/js/**")
                .permitAll()
                .and()
                .authorizeRequests()
                .anyRequest()
                .authenticated()
                .and()
                .formLogin(
                        form -> form
                                .loginPage("/login")
                                .permitAll()
                );
    }

Show! Valeu Matheus, deu certo.