未知标签c:forEach

时间:2015-09-30 16:53:38

标签: html jsp foreach jstl

我在以下.jsp文件中使用<c:forEach>.....</c:forEach>标记并接收unknown tag c:forEach。我正在使用maven并包含以下依赖项:

<dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
</dependency>

我的简单.jsp文件如下所示:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"     "http://www.w3.org/TR/html4/loose.dtd">
<html>
<body>
<h3>Senior Design Project</h3>
<br>
<form action="query" method="post" commandName="queryForm">
    Enter an SQL Query: <br> <br>
    <textarea name="query" path="query" cols="55" rows="3"
        style="overflow: hidden"></textarea>
    <br> <input type="submit" value="submit">
</form>
<h3>Results:</h3>
<br>
<h5>File Paths:</h5>

<c:forEach var="individualPath" items="${paths}">
    <tr>
        <td>${individualPath}</td>
    </tr>
</c:forEach>

</body>
</html>

jstl需要更多设置吗?从我所看到的,maven依赖应该处理一切。非常感谢帮助。

3 个答案:

答案 0 :(得分:4)

.jsp页面顶部的taglib需要包含如下:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"   "http://www.w3.org/TR/html4/loose.dtd">
<html>
<body>
<h3>Senior Design Project</h3>
<br>
<form action="query" method="post" commandName="queryForm">
    Enter an SQL Query: <br> <br>
    <textarea name="query" path="query" cols="55" rows="3"
        style="overflow: hidden"></textarea>
    <br> <input type="submit" value="submit">
</form>
<h3>Results:</h3>
<br>
<h5>File Paths:</h5>

<c:forEach var="individualPath" items="${paths}">
    <tr>
        <td>${individualPath}</td>
    </tr>
</c:forEach>

</body>
</html>

答案 1 :(得分:0)

即使遇到这个问题,我也通过消除<%@和taglib之间的空格来解决。

答案 2 :(得分:-1)

<%@taglib  uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

在jsp文件的顶部添加这个解决了这个问题。