Olá pessoal,
tudo bem?
Estou tendo um problema na apresentação do arquivo CSS do Bootstrap na página JSP. Estou importando um cabeçalho padrão dentro de outras páginas.
Para contextualizar, tenho 2 páginas, sendo:
1- cadastrar produto
2- listar produtos
Estou utilizando um terceira página chamada cabecalho. Nela está configurado a chamada para o CSS do Bootstrap. Ao acessar as duas páginas acima, a renderização do CSS está normal.
Na página que lista os produtos, tenho um botão para “atualizar” um produto. Ao clicar nele, estou reaproveitando a mesma página de cadastrar produto e é nesta hora que o CSS não é recarregado.
A classe (controller) que trata a request para ir a tela de cadastro ou a tela de edição, possui apenas um método para isto. Segue:
@Controller
public class ProdutoController {
@Autowired
private ProdutoDao dao;
@GetMapping({ "/produto", "/produto/{id}" })
public ModelAndView form(@PathVariable("id") Optional<Integer> id, Produto produto) {
ModelAndView mv = new ModelAndView("produto/produto");
if (id.isPresent()) {
produto = dao.buscaPorId(id.get());
}
mv.addObject("produto", produto);
return mv;
}
}
Estrutura do projeto:
Página produto
Tela lista de produtos, o arquivo CSS é referenciado corretamente na URL local http://localhost:8080/loja/assets/css/bootstrap.min.css:
Ao clicar no botão editar, o css não é renderizado porque ele muda a URL incluindo produto depois loja/
Como estou utilizando Spring, está configurando para não manipular request para recursos estáticos. Segue um trecho:
<context:component-scan base-package="br.com.tmf.loja" />
<mvc:annotation-driven />
<mvc:default-servlet-handler />
<bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/" />
<property name="suffix" value=".jsp" />
</bean>
Alguém poderia me ajudar?
Obrigado.
Abraço.



