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

Personalizando o Login e o Logout: Bootstrap parou de funcionar

Salva a todos! Eis que me deparo com um novo problema em meu projeto: adicionei as dependencies do Spring Security e levei um error_404 na lata! Chequei na documentação do Spring Security e atualizei as dependencies do Spring MVC para a versão 4.3.3, aí voltou a compilar de boa. Mas as configurações do Bootstrap pararam de funcionar! O que pode ter ocasionado este problema?

3 respostas

Olá Adriano, tudo bem?

Me parece que o Spring security está bloqueando sua pasta resources e por isso o bootstrap não está funcionando. Não sei se você está usando xml ou anotações em seu projeto, mas tente realizar essas mudanças:

spring-security.xml:

<security:intercept-url pattern="/resources/**" access="permitAll" />

ou

protected void configure(HttpSecurity http) throws Exception {
http.
...
authorizeRequests().antMatchers("/css/**", "/js/**", "/images/**").permitAll();

Espero ter ajudado!

Abs

solução!

E aí Rafael? Cara, eu já tinha desconfiado disso. Por isso tentei primeiramente antMachters("/resoucers/**").permitAll(), mas não funfou. Li tua dica e a implementei, mas sem sucesso também. Mas aí resolvi fazer isso aqui:

.antMatchers("/resources/css/**", "/js/**", "/images/**").permitAll()

E deu certo! Só achei que ficou zoado, mas pesquisarei mais pra ver se melhoro esse código.

Valeu pela dica, Rafael!

Funcionou aqui também o método ficou assim: OBS: Criei uma pasta específica para o BootStrap.

@Override
    protected void configure(HttpSecurity http) throws Exception {

    http.authorizeRequests()
        .antMatchers("/produtos/form").hasAnyRole("ADMIN")
        .antMatchers("/carrinho").permitAll()
        .antMatchers( HttpMethod.POST, "/produtos").hasAnyRole("ADMIN")
        .antMatchers( HttpMethod.GET, "/produtos").permitAll()
        .antMatchers("/produtos/**").permitAll()
        .antMatchers("/").permitAll()
        .antMatchers("/resources/css/**", "/resources/js/**", "/resources/images/**").permitAll()
        .antMatchers("/resources/bootstrap/css/**", "/resources/bootstrap/js/**", "bootstrap/images/**").permitAll()
        .anyRequest().authenticated()
        .and().formLogin()

        ;

    }