exception
org.apache.jasper.JasperException: javax.servlet.ServletException: java.lang.NoClassDefFoundError: org/apache/taglibs/standard/tag/rt/core/SetTag org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:531) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:439) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:332) javax.servlet.http.HttpServlet.service(HttpServlet.java:722) org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:238) org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:264) org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1208) org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:992) org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:939) org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856) org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:915) org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:822) javax.servlet.http.HttpServlet.service(HttpServlet.java:641) org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:796) javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
原因是
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>报错
缺少jar包
引入jstl的相关jar包即可
注意:
1、JSTL概述
JSTL全称为JSP Standard Tag Library,即JSP标准标签库。JSTL作为标签库,提供一系列的JSP标签,实现如集合的遍历、数据的输出、字符串的处理、数据的格式化等。
2、JSTL规范有很多的版本,彼此之间是有差别的。请留意taglib的uri属性,现在统一用的是
以下列出jstl各个版本与jsp及servlet版本之间的依赖关系。下面的版本参考的是百度百科内容
点击打开链接
版本号
|
JSTL 版本
|
要求(必须满足此条件)
|
获取Taglib途径
|
Standard 1.2
|
JSTL 1.2 (尚未经过JCP认证)
|
Servlet 2.5, JavaServer Pages 2.1
|
subversion
|
Standard 1.1
|
JSTL 1.1
|
Servlet 2.4, JavaServer Pages 2.0
|
下载
|
Standard 1.0
|
JSTL 1.0
|
Servlet 2.3, JavaServer Pages 1.2
|
下载
|
<%@ taglib prefix="c" uri="http:// Java .sun.com/jstl/core " %>
JSTL1.1 的声明是:
<%@ taglib prefix="c" uri=http://java.sun.com/jsp/jstl/core %>
项目中,已经是 jstl 1.2 版本了,页面中也全部是用<%@ taglib prefix="c" uri=http://java.sun.com/jsp/jstl/core %>这种方式。javaee5之后就只有 jstl.jar 这一个jar包了,没有standard.jar包。