Estou com o mesmo problema do amigo acima, css não carrega importei o arquivo zip como foi ensinado no exercicio, o caminho cheguei a colocar manual sem o contexPath, mesmo assim nao carrega da o erro 404.
Estou com o mesmo problema do amigo acima, css não carrega importei o arquivo zip como foi ensinado no exercicio, o caminho cheguei a colocar manual sem o contexPath, mesmo assim nao carrega da o erro 404.
Depois de algum tempinho achei a seguinte solução: Olha como ficou meu AppWebConfigurantion:
@EnableWebMvc
@ComponentScan(basePackageClasses = { HomeController.class, ProdutoDAO.class,
FileSaver.class })
public class AppWebConfiguration extends WebMvcConfigurerAdapter {
@Bean
public InternalResourceViewResolver internalResourceViewResolver() {
InternalResourceViewResolver resolver = new InternalResourceViewResolver();
resolver.setPrefix("/WEB-INF/views/");
resolver.setSuffix(".jsp");
return resolver;
}
@Bean
public MessageSource messageSource() {
ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();
messageSource.setBasename("/WEB-INF/messages");
messageSource.setDefaultEncoding("UTF-8");
messageSource.setCacheSeconds(1);
return messageSource;
}
@Bean
public FormattingConversionService mvcConversionService() {
DefaultFormattingConversionService conversionService = new DefaultFormattingConversionService();
DateFormatterRegistrar registrar = new DateFormatterRegistrar();
registrar.setFormatter(new DateFormatter("dd/MM/yyyy"));
registrar.registerFormatters(conversionService);
return conversionService;
}
@Bean
public MultipartResolver multipartResolver() {
return new StandardServletMultipartResolver();
}
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/resources/**").addResourceLocations(
"/resources/");
}
}
Solução foi extender o WebMvcConfigurerAdapter, e dar um @Override no addResourceHandlers registrando o caminho que fica a pasta resources
Fábio tentei não deu certo, movi pra outras pastas o css e mostrei o caminho delas e nada, faço a inspecao pelo google do css que é carregado na pagina, apenas 1 é carregado o de endereco é web, o restante tudo Status 404.
<link href="/casadocodigo/src/main/webapp/resources/css/book-collection.css"
rel="stylesheet" type="text/css" media="all" />
``
eu to acessando os arquivos do mesmo modo que já veio no detalhe.jsp do zip, você modificou?
<c:url value="/" var="contextPath" />
<link href="${contextPath}resources/css/cssbase-min.css"
rel="stylesheet" type="text/css" media="all" />
a minha pasta resources tá dentro do webapp junto com as pastas arquivos-sumarios e WEB-INF como aparentemente o seu está se tiver tudo certo, qualquer coisa da um refresh no projeto, um clean no server e um ctrl+f5 no navegador as vezes é isso
Não modifiquei, só adicionei outras referencias colocando todo endereço do local do arquivo e mesmo assim continua a nao achar,
Os arquivos CSS referenciado aparece,mas vazio do conteúdo original, e exibe essa msg
<html><head><title>Apache Tomcat/7.0.69 - Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP Status 404 - </h1><HR size="1" noshade="noshade"><p><b>type</b> Status report</p><p><b>message</b> <u></u></p><p><b>description</b> <u>The requested resource is not available.</u></p><HR size="1" noshade="noshade"><h3>Apache Tomcat/7.0.69</h3></body></html>
`
E o detalhe.jsp ta abrindo normal mas só sem o css?
isso abre normal, sem o css
e modificou o AppWebConfiguration do jeito que eu coloquei? pq realmente o resto tá igual aqui :/
achei outro modo, apaga aquele método addResourceHandlers que eu passei e implementa outro método:
@Override
public void configureDefaultServletHandling(
DefaultServletHandlerConfigurer configurer) {
configurer.enable();
}
nada, alterei o caminho do css pra todos possiveis e nada, continua nao achando o caminho.
Boa noite!
Estou com o mesmo problema do Rodrigo, realizei todos os testes e implementações e nada.
Alguém pode me ajudar?
Bom dia!
Consegui resolver, foi só seguir o que Fábio mencionou, criar a pasta resources em src/main/webapp e mover as pastas css e imagens.
Obrigado Fábio.
Olá, Estou com o mesmo problema. Não consegui carregar os css, sendo que no Source da página contem todos.
Pessoal, eu fiz o que o Fabio Baptista indicou e funcionou aqui também. Obrigado, Fabio.
Olá, não consegui fazer carregar os css na minha página. Como ficou resolvido?
Consegui resolver com a primeira sugestão do Fábio. Fazendo a AppWebConfiguration extender o WebMvcConfigurerAdapter, e dar um @Override no addResourceHandlers.
Segue o que o Fábio falou, na documentação do Spring MVC:
A primeira solução funcionou perfeitamente pra mim, a segunda estava dando erro no override.
Consegui arrumar utilizando a primeira solução.
Deu certo como o Fábio explicou no inicio, geralmente alguns problemas se dão pela falta de atenção na hora da digitação, é assim mesmo, com calma dá certo ;)
O primeiro passo é extender a classe AppWebConfiguration da classe org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter
public class AppWebConfiguration extends WebMvcConfigurerAdapter { ... }
Sobrescrever o método public void addResourceHandlers(ResourceHandlerRegistry registry)
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
}
Verifique se a pasta resources está o local correto
.
├── java
│ └── br
│ └── com
│ └── casadocodigo
│ └── loja
│ ├── conf
│ │ ├── AppWebConfiguration.java
│ │ ├── JPAConfiguration.java
│ │ └── ServletSpringMVC.java
│ ├── controller
│ │ ├── HomeController.java
│ │ └── ProdutosController.java
│ ├── daos
│ │ └── ProdutoDAO.java
│ ├── infra
│ │ └── FileSaver.java
│ ├── models
│ │ ├── Preco.java
│ │ ├── Produto.java
│ │ └── TipoPreco.java
│ └── validation
│ └── ProdutoValidation.java
└── webapp
├── arquivos-sumario
├── index.html
├── resources
│ ├── css
│ │ ├── book-collection.css
│ │ ├── checkout.scss.css
│ │ ├── checkout-style.css
│ │ ├── cssbase-min.css
│ │ ├── fontello.css
│ │ ├── fontello-embedded.css
│ │ ├── fontello-ie7.css
│ │ ├── fonts.css
│ │ ├── guia-do-programador-style.css
│ │ ├── layout-colors.css
│ │ ├── produtos.css
│ │ ├── responsive-style.css
│ │ └── style.css
│ └── imagens
│ └── cdc-logo.svg
└── WEB-INF
├── messages.properties
└── views
├── home.jsp
└── produtos
├── detalhe.jsp
├── form.jsp
├── lista.jsp
└── ok.jsp
Sobre os arquivos, durante o import ele cria uma pasta "casadocodigo" emcima do projeto "casadocodigo", tive que fazer um refactor e mover para o local correto.
@Ythalo Rossy Saldanha Lira,
Muito Obrigado. O CSS só passou a responder depois dos passos informados por você na configuração do AppWebConfiguration.
Abcs, Marcos