我正在学习,我已经从这里下载了jstl 2.0.0,因为 JSTL 1.2.2使用javax,我使用的是雅加达。
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文件添加到构建路径和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 Server:Tomcat-10 IDE:Eclipse
我尝试了什么:
我找不到源代码,但有人要求删除<%@
和taglib
之间的空白。
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
很久没试过了。任何帮助都是值得注意的:)
发布于 2021-07-27 12:57:58
我和您有同样的问题,我确实像评论中说的那样,查看依赖项,下载并将下面的一个放在webapp/Web-inf/lib
文件夹中,并且在那之后工作。
https://stackoverflow.com/questions/67721547
复制相似问题