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

[Bug] Erro ao subir H2 para validar o teste

Após eu ajustar a minha aplicação para a versão 3.1, conforme orientado no curso, quando eu subo a aplicação, estou tomando um erro ao subir o console do H2 na minha máquina "No suitable driver found for 08001/0". O que pode ter acontecido?

Insira aqui a descrição dessa imagem para ajudar na acessibilidadeInsira aqui a descrição dessa imagem para ajudar na acessibilidade

6 respostas

Oi!

Para usar o banco de dados H2 tem que fazer um configuração "especial" no Spring Security. Dá uma olhada aqui: https://cursos.alura.com.br/forum/topico-nao-consigo-usar-o-h2-console-apos-atualizacao-do-spring-security-344485

Oi! A console do H2 voltou a funcionar, só que, na hora de testar, retorna o código 403 Forbidden e na classe, está retornando erro de compilação (.csrf(), .sessionManagement() e and() "is deprecated since version 6.1 and marked for removal"). Insira aqui a descrição dessa imagem para ajudar na acessibilidadeInsira aqui a descrição dessa imagem para ajudar na acessibilidadeAgora, ajustando para a nova versão 3.1, eu encontrei os erros abaixo na hora de ajustar. Como que eu faço para corrigir este método? Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Pode deixar o seu código assim por conta das mudanças do Spring Security:

@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
    return http
            .csrf(csrf -> csrf.ignoringRequestMatchers(toH2Console()).disable())
            .sessionManagement(sm -> sm.sessionCreationPolicy(SessionCreationPolicy.STATELESS))
            .authorizeHttpRequests(req -> {
                req.requestMatchers(toH2Console()).permitAll();
            })
            .headers(headers -> headers.frameOptions(FrameOptionsConfig::disable))
            .build();
}

Só que está dando erro na penúltima linha, quando eu altero o código dessa forma: Insira aqui a descrição dessa imagem para ajudar na acessibilidadeEntão, eu tentei ajustar, adicionando HeadersConfigurer, do import abaixo. Subiu a aplicação, a console do H2, mas deu erro na hora de eu testar no Insomnia... Insira aqui a descrição dessa imagem para ajudar na acessibilidade

import org.springframework.security.config.annotation.web.configurers.HeadersConfigurer;

Insira aqui a descrição dessa imagem para ajudar na acessibilidade Erro Insomnia:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

solução!

Essas configurações são apenas para liberar o acesso ao H2 pelo navegador, que pelos seus pritns deu certo e você consegue agora acessar o banco e fazer consultas com SQL.

Agora, para as funcionalidades da API você precisa continuar o curso para aprender como liberar/restringir o acesso a elas.

Fechou, vou acompanhar. Obrigado!