我正在学习 JSTL,我已经从这里下载了JSTL 2.0.0 ,因为jstl 1.2.2使用的是javax而我使用的是jakarta。
显示.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文件。我不认为这个问题与.jar文件有关,但我可能是错的。WEB-INF
在这里,<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:日食
我尝试了什么:
我找不到来源,但有些答案要求删除和之间的<%@
空格taglib
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
尝试了很久。任何帮助都是可观的:)