哎,真他娘的无语了,jstl标签竟然还与tomcat的版本有关。
一会报错:
java.lang.AbstractMethodError: javax.servlet.jsp.PageContext.getELContext()Ljavax/el/ELContext;
这个是你用的tomcat版本低,而jstl标签的版本高了。(我用的tomcat5.5,jstl1.2)
google一下,说是什么web.xml版本为2.4要改为2.3,还需要添加一个c.tld的引用。
修改后继续错:
The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application

这个是你的<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>,uri路径写错了,是jstl1.1版本一下的去standard.jar文件的META-INF中的c.tld中看uri路径是否多写了jsp(如:http://java.sun.com/jstl/core)。

不断的报错:
java.lang.NoClassDefFoundError: org/apache/taglibs/standard/tag/rt/core/ForEachTag
修改后仍然报错:
java.lang.NoClassDefFoundError: javax/el/ValueExpression

按照网上所说,更换为jstl1.0.1.jar和standard1.0.1.jar,依旧报错:

According to TLD or attribute directive in tag file, attribute items does not accept any expressions

一个上午加上一小半下午时间就在这些错误中纠缠过去了,这错误真是层出不穷,连连不断啊、最后一位大神的博客被我发现,终于解决问题,因为tomcat的版本与jstl以及servlet还需要兼容的啊。

servlet/jsp         tomcat
 2.5/2.1             6.0.18
 2.4/2.0             5.5.27
 2.3/1.2             4.1.39
 2.2/1.1              3.3.2(archived)
-----------------------------------------------------------
servlet       jsp      jstl     javaee
  2.5          2.1      1.2       5.0
  2.4          2.0       1.1      1.4
  2.3          1.2       1.0      1.2
  
  
小解释一下,可能大家伙都知道了,传说中的servlet版本可以在web.xml中看到。
如我的tomcat5.5:

version=2.4 。

当然也会有些报错与jar包冲突有关。

两条解决jstl标签问题的途径:1、jar包冲突,覆盖低版本的jar包即可;2、就需要着重看看是否与tomcat的版本冲突,否则也不能成功。.

经过测试:在jstl1.0以后(jstl1.1,jstl1.2),都包含两个uri,即:

1. http://java.sun.com/jsp/jstl/core;2.http://java.sun.com/jstl/core

但是,jstl1.0以后推荐使用第一个uri(我使用第二个uri报错:According to TLD or attribute directive in tag file, attribute items does not accept any expressions),一定要注意这个细节。

祝大家好运!!

jstl的错误总结与解决方法的更多相关文章

  1. coreseek常见错误原因及解决方法

    coreseek常见错误原因及解决方法 Coreseek 中文全文检索引擎 Coreseek 是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和 ...

  2. android 真机调试出现错误 INSTALL_FAILED_INSUFFICIENT_STORAGE 的解决方法。

    关于这个神奇的 内存不够错误的通常解决方法,网上大把,建议大家在尝试过了网上的方法后再来尝试下我的这种方法. 编译工具: android studio 测试真机:米 2 调试的时候出现:INSTALL ...

  3. 无法打开物理文件xxx.mdf操作系统错误 5:“5(拒绝访问。)” (Microsoft SQL Server,错误: 5120)的解决方法

    无法打开物理文件xxx.mdf操作系统错误 5:“5(拒绝访问.)” (Microsoft SQL Server,错误: 5120)的解决方法   问题描述: 在附加数据库到sql server时,附 ...

  4. 错误:Unsupported major.minor version 51.0(jdk版本错误)的解决方法

    错误:Unsupported major.minor version 51.0(jdk版本错误)的解决方法 java.lang.UnsupportedClassVersionError: org/ap ...

  5. 批处理命令篇--配置免安装mysql 5.6.22, 以及1067错误的一个解决方法

    mysql 服务启动出现1067错误的一个解决方法: 当服务启动出现1067错误时,可查看“windows 事件查看器”,发现类似错误提示 Can't find messagefile 'F:\    ...

  6. IIS发布网站浏览之后看到的是文件目录 & Internal Server Error 处理程序“ExtensionlessUrlHandler-ISAPI-4.0_64bit”在其模块列表中有一个错误模块“IsapiModule” 解决方法 & App_global.asax.pduxejp_.dll”--“拒绝访问。 ”

    Q:IIS发布网站浏览之后看到的是文件目录 A:它出现了一个说到.NET4.0 更高框架什么的错误,所以我将 .NTE CRL版本由4.0改为2.0了,改为2.0后就出现了只能浏览文件目录了.改为4. ...

  7. ORA-04091错误原因与解决方法

    最近工作中写了一触发器报错:ORA-04091:table XX  is mutating, trigger/function may not see it. 下面通过官方文档及网友提供资料分析一下错 ...

  8. DirectX SDK (June 2010)安装错误S1023,解决方法

    转自:http://hi.baidu.com/rootcat/item/6730f15f85e2c1958c12ed81 DirectX SDK (June 2010)安装错误S1023,解决方法 导 ...

  9. vue中npm run dev运行项目不能自动打开浏览器! 以及 webstorm跑vue项目jshint一直提示错误问题的解决方法!

    vue中npm run dev运行项目不能自动打开浏览器!以及 webstorm跑vue项目jshint一直提示错误问题的解决方法! 1.上个项目结束就很久没有使用vue了,最近打算用vue搭建自己的 ...

随机推荐

  1. Java -- Matrix的一点认识

    例如在如下一段代码中: Matrix m = new Matrix(2,3); for(int i=0; i<m.getRowDimension(); i++) { for(int j=0; j ...

  2. YouTube高效传输策略:节省14%带宽 用户体验提升

    视频平台会侦测用户端的带宽来调整码率及分辨率,但通常只考虑到编码器的比特率率--质量关联,忽略了用户的可用带宽影响.YouTube团队通过让视频流匹配用户带宽,不仅节省了带宽,还有效提升了用户主观体验 ...

  3. 洛谷 P3168 [CQOI2015]任务查询系统 解题报告

    P3168 [CQOI2015]任务查询系统 题目描述 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分. 超级计算机中的任务用三元组\((S_i,E_i,P_i) ...

  4. Share single RDM between multiple VM's in ESX

    1.Create a VM01 on esx01,Create a VM02 on esx02 2.Create the RDM on your VM01 (using the virtual, no ...

  5. Linux环境准备20160921

    这篇文章,是我准备linux的java环境时候,碰到的各种问题,采用的是centos 6.5版本. 1.卸载open jdk  先查看 rpm -qa | grep java  # java-1.4. ...

  6. 结构型设计模式之装饰模式(Decorator)

    结构 意图 动态地给一个对象添加一些额外的职责.就增加功能来说,D e c o r a t o r 模式相比生成子类更为灵活. 适用性 在不影响其他对象的情况下,以动态.透明的方式给单个对象添加职责. ...

  7. Sqlite插入、修改、删除表里面的数据

    转载 2014年05月10日 10:38:21 标签: sqlite3 / 数据库 8688 转自:http://www.cnblogs.com/myqiao/archive/2011/07/13/2 ...

  8. UVA 10746 Crime Wave - The Sequel

    最小费用最大流 源点->警察->bank->汇点 剩下的模板就可以 #include <map> #include <set> #include <li ...

  9. Centos 查看进程的几条命令

    1. ps -ef | grep java 表示查看所有进程里 CMD 是 java 的进程信息 2. ps -aux | grep java -aux 显示所有状态 3. kill -9 [PID] ...

  10. python+requests接口自动化完整项目设计源码【转载】

    本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/tag/python%E6%8E%A5%E5%8F%A3%E8%87%AA%E5%8A%A8%E ...