如何解决使用 Eclipse 时 JSTL 中的 <c:forEach> 标记出错
我正在学习 JSTL 并且我已经从 here 下载了 JSTL 2.0.0,因为 jstl 1.2.2 使用的是 javax我正在使用 jakarta。
display.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html>
<html>
<head>
<Meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<c:out value="Jai Swaminarayan"/>
<c:forEach items="${students}" var="s">
${s} <br/><br/>
</c:forEach>
</body>
</html>
Eclipse 上的错误
A problem was encountered using TagExtraInfo class
org.apache.taglibs.standard.tei.ForEachTEI for 'c:forEach'
网页错误
HTTP Status 500 – Internal Server Error
Type Exception Report
Message java.lang.NoClassDefFoundError: jakarta/servlet/jsp/jstl/core/LoopTag
Description The server encountered an unexpected condition that prevented it from fulfilling the request.
我什至将 .jar 文件添加到 Build Path 和 WEB-INF
文件夹。我不认为这个问题与 .jar 文件有关,但我可能是错的。
此处,<c:out>
运行良好,但仅在 <c:forEach>
标记中引发错误。我检查了 jakarta.servlet.jsp.jstl-2.0.0.jar 中的文件和名为 forEachTag.class 的文件是否存在于 org.apache.taglibs 中。 standard.tei.ForEachTEI
软件数据:
Java 版本:15.0.2 | 服务器:Tomcat-10 | IDE:Eclipse
我的尝试:
我找不到来源,但有人要求删除 <%@
和 taglib
之间的空格
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
尝试了很久。任何帮助都是可观的:)
解决方法
我和你有同样的问题,我确实像评论说的那样查看依赖项,下载并将下面的一个放在 webapp/Web-inf/lib
文件夹中,它在 that 之后工作。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。