在 Tomcat 10 中添加 JSTL 库时,可能会遇到以下一些问题:
1. 报错信息:`The absolute uri:
http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application`
解决方法:将 jstl-1.2.jar 和 standard-1.1.2.jar 放置在 WEB-INF/lib 目录下。
2. 报错信息:`According to TLD, tag c:forEach must be empty, but is not`
解决方法:将 `<c:forEach></c:forEach>` 转换为 `<c:forEach />`,或者在开始标签的位置添加 `</c:forEach>`(即闭合标签)。
3. 遍历 Map 对象时报错:`${s.key}` 无法输出 Map 的 Key 值。
解决方法:需要修改 `<c:forEach>` 标签中的属性值 items,从 `${hashMap}` 修改为 `${hashMap.entrySet()}`。这样在遍历 Map 的时候,就可以使用 `${s.key}` 输出 Key 的值,`${s.value}` 输出 Value 的值了。
修改后的代码如下所示:
- <c:out value="hello baby"></c:out>
- <c:forEach items="${hashMap.entrySet()}" var="s">
- ${s.key}
- </c:forEach>
复制代码