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

Can not find the tag directory "/WEB-INF/tags"

Estou tentando inserir o template criado na home.jsp, porém o diretório não é reconhecido. Segui exatamente o que foi mostrado na aula.

Erro exibido pelo Eclipse: https://uploaddeimagens.com.br/imagens/QX5KWoc

Página de erro 500: https://uploaddeimagens.com.br/imagens/7syFB5c

Imagem da estrutura do projeto: https://uploaddeimagens.com.br/imagens/EA_faJg

Abaixo o código da home.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://www.springframework.org/tags" prefix="s"%>
<%@ taglib uri="http://www.springframework.org/security/tags" prefix="security" %>
<%@ taglib tagdir="/WEB-INF/tags" prefix="tags" %>

<tags:pageTemplate titulo="Casa do Código">
    <section id="index-section" class="container middle">
        <ul class="clearfix book-collection">
            <c:forEach items="${produtos }" var="produto" >
                <li>
                    <a href="${s:mvcUrl('PC#detalhe').arg(0, produto.id).build() }" class="block clearfix">
                    <h2 class="product-title">${produto.titulo }</h2> 
                    <img width="143" height="202" src="https://cdn.shopify.com/s/files/1/0155/7645/products/java8-featured_large.png?v=1411490181" alt="Java 8 Prático" title="Java 8 Prático" /> 
                    <small class="buy-button">Compre</small>
                    </a>
                </li>
            </c:forEach>
        </ul>
    </section>
</tags:pageTemplate>

código da pageTemplate.jsp localizada na "/WEB-INF/tags"

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ attribute name="titulo" required="true" %>
<%@ attribute name="bodyClass" required="false" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

<!DOCTYPE html>
<html>
<head>
    <c:url value="/" var="contextPath" />
    <meta charset="utf-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
    <link rel="icon" href="//cdn.shopify.com/s/files/1/0155/7645/t/177/assets/favicon.ico?11981592617154272979" type="image/ico" />
    <link href="https://plus.googlecom/108540024862647200608" rel="publisher" />

    <title>${titulo } - Casa do Código</title>

    [...]

</head>
<body class="${bodyClass }">

<%@ include file="/WEB-INF/views/header.jsp" %>

<jsp:body />

<%@ include file="/WEB-INF/views/footer.jsp" %>

</body>
</html>
2 respostas
solução!

Tente renomear o seu pageTemplate.jsp para pageTemplate.tag. Segundo a aula, eh .tag

Era isso mesmo, Daniel! Desatenção minha...

Muito obrigado pela resposta!