Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
13
respostas

Meu CSS não funciona nos projetos.

Deixei os dois arquivos no MESMO diretório (src/main/webapp/WEB-INF/views) para testar, mas não funciona:

=== login.jsp ===

<!DOCTYPE html>
<html>

    <head>

        <link rel="stylesheet" type="text/css" href="estilo.css"/>

    </head>

<body>
    <form action="index" method="POST">

        <label>Usuário</label><p>
        <input type="text" name="usuario"/><p>


        <label>Senha</label><p>
        <input type="password" name="senha"><p>

        <input type="submit" name="enviar" value="Logar" >

    </form>
</body>
</html>

=== estilo.css ===

body {
    font-size: 36px;
}
13 respostas

Eu acho que seu href é assim : href=views/estilo.css, pode tentar andre?

abraço

Os 2 arquivos(login.jsp e estilo.css) estão dentro da pasta views... Mas eu tentei deixar o href igual ao seu mas não funcionou.

Estou deixando os 2 arquivos na mesma pasta para facilitar o mapeamento, mas não sobe o css nos meus JSPs.

(src/main/webapp/WEB-INF/views)

Na ferramenta de desenvolvedor informa que não foi encontrado o .CSS, erro 404.

Tentei mudar a localização do estilo.css para:src/main/webapp/resources/css/estilo.css

E colocando o href="src/main/webapp/resources/css/estilo.css"

E também

../../resources/CSS/estilo.css

Mas continua o erro 404 do estilo.css

Oi Andre

Se você mudar o css para caminho para src/main/webapp/resources/css/estilo.css

então no seu jsp vai ficar assim assim :

<link rel="stylesheet" href="resources/css/estilo.css"/>

Andre,

Outra coisa, chegou a ver como está sua WebAppConfiguration ? Posta a classe aqui para a gente ver como ela está.

Tentei o , mas sem sucesso.

404

@EnableWebMvc
@ComponentScan(basePackageClasses={UsuarioController.class})
public class AppWebConfiguration {

    @Bean //para que o Spring o gerencie este método
    public InternalResourceViewResolver internalResourceViewResolve() {
        InternalResourceViewResolver resolve = new InternalResourceViewResolver();
        resolve.setPrefix("/WEB-INF/views/");
        resolve.setSuffix(".jsp");
        return resolve;
    }

    @Bean
    public MessageSource messageSource() {
        ReloadableResourceBundleMessageSource messageSource =
                new ReloadableResourceBundleMessageSource();

        messageSource.setBasename("/WEB-INF/messages");
        messageSource.setDefaultEncoding("UTF-8");
        messageSource.setCacheSeconds(1);

        return messageSource;
    }
}

O problema está na classe AppWebConfiguration mesmo, você precisa avisar o Spring que a sua classe estilo.css é um arquivo css, para fazer isso faça siga esses passos :

  • A classe AppWebConfiguration precisa extender WebMvcConfigurationAdapter

  • Depois disso você precisa adicionar um novo método nessa classe:

@Override
public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
    configurer.enable();
}

Fazendo isso, salve essa classe e reinicie o servidor para ver o resultado.

abraço

Não achei essa classe WebMvcConfigurationAdapter para herdar. O eclipse sugeriu essas duas: WebMvcConfigurerAdapter ou WebMvcConfigurationSupport.

Mas nenhuma funcionou sobrescrevendo o método configureDefaultServletHandling.

No curso de SpringMVC, o instrutor não faz essa configuração no AppWebConfiguration e no dele funciona normalmente o css.

O estranho é que meu login.jsp não consegue achar o caminho do estilo.css no console do google Chrome aparece o erro.

Oi

Eu me enganei aqui e passei a informação errada, você precisa estender a WebMvcConfigurerAdapter, consegue postar aqui em qual aula que ele faz isso ? Pq eu peguei isso de uma aula que o instrutor importa o bootstrap no projeto ( aula3 do curso spring MVC parte 2).

Chegou a fazer um clean no seu projeto ?

Eu testei com o WebMvcConfigurerAdapter tbm, mas não funcionou mesmo dando clear no projeto.

Esse projeto do login e senha é mais simples que fiz um teste com o css.

No curso Spring MVC I parei na aula 10 - Url amigáveis atividade 3 , fiz o download do arquivo .zip detalhes-com-css.

Copiei para o projeto, todo o código funciona até ai, só o css que não sobe.

link dos arquivos do curso de Spring: https://drive.google.com/open?id=0B7hss4f_pjgVcU1UWkRiMEYyakE

link dos arquivos do login e senha: https://drive.google.com/open?id=0B7hss4f_pjgVbkxXTmFweUE0bW8

solução!

Oi andre

muitos links para baixar hein hahaha.

Olha eu baixei o projeto do forum, e vi que fez certinho tudo que eu pedi, só faltou você eu te dizer para fazer uma coisa : usar o c:url do JSTL =] Então apaga a lina que do seu include e substitua por essa:

<link rel="stylesheet" type="text/css" href='<c:url value="/resources/css/estilo.css"/>'>

Tenta na sua máquin por favor, aqui deu tudo certo =] .

abraço

Foi mal pelo quantidade de arquivos. Obrigado pela força Caio, agora subiu o CSS. Vlw