【发布时间】:2012-05-22 01:43:29
【问题描述】:
我刚刚学习 JSP,并且正在 Tomcat 7 上使用 JSTL 进行测试。我能够成功定义和使用自定义标签。但是当我尝试实现 JSTL 时,容器会抛出两个异常。我该如何解决这个问题,以便 jsp 正确翻译?
java.lang.ClassNotFoundException: javax.servlet.jsp.tagext.TagLibraryValidator java.lang.NoClassDefFoundError: javax/servlet/jsp/tagext/TagLibraryValidator
我正在使用以下 jar 文件。
javax.servlet.jsp.jstl-1.2.1.jar javax.servlet.jsp.jstl-api-1.2.1.jar
我已将两个 JSTL 1.2.1 jar 放在测试 Web 应用程序的 WEB-INF/lib 和我的 JRE 的 CLASSPATH 中。我还在 Eclipse 的构建路径选项中标记了要导出的两个 jar。
index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<c:out value="JSTL works."></c:out>
</body>
</html>
【问题讨论】: