关于在Intellij Idea中使用JSTL标签库报错的问题

今天在使用idea做jsp的项目时,首先发现在jsp页面里引入的DTD报错,idea不识别DTD。而tomcat运行正常,点击页面跳转到有jstl的DTD页面时报错,检查浏览器,发现如下问题:

             org.apache.jasper.JasperException: This absolute uri http://java.sun.com/jsp/jstl/core) cannot be resolved in either web.xml or the jar files deployed with this application

异常出现的问题有三

  其一:jstl版本问题

      jstl1.0的DTD写法是:<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core " %>

      jstl1.1以后的写法是: <%@ taglib prefix="c" uri=http://java.sun.com/jsp/jstl/core %>

  排查问题:我用的是1.1.2版本的jar,项目中引用的DTD是1.1.2的DTD。

  

  其二:jstl的jar的问题

      classes文件中lib下有jar,但是WEB_INF的lib下没有jar包。

  排查问题:classes下lib中有jar包,但是WEN-INF下的lib文件夹下没有。

  解决:   下载JSTL标签库的DTD文件
      下载地址: http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/
      拉到最下面,找到最新的那一个也就是 "jakarta-taglibs-standard-1.1.2.zip",它下面的asc文件不用下载
      或者直接点的下载地址:  http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/jakarta-taglibs-standard-1.1.2.zip 

  其三:发现引入jar之后还是会报错(低版本ide的问题)

    但是idea还是会报错,因为它不认识这个标签,所以需要在设置里进行添加。 
    选择File—>Setting在Setting下找到languages&Frameworks—->Schemas and DTDs,在右边的External Schemas and DTDs框下点击+,然后在URI中填入http://java.sun.com/jsp/jstl/core 在explorer中找到解压文件的tld目录下的c.tld文件,并选择,到这里,你就可以结局idea不识别jstl的问题

  排查问题:我用的是最新的idea,所以没有出现这个问题。引入之后直接可用,虽然在Setting中找不到对应的Schemas标签的uri,但是依然可用。不清楚为什么,如果有懂的大佬,欢迎留言相告,不胜感激。

  

  from:https://www.cnblogs.com/junhuawang/p/6953177.html,https://www.cnblogs.com/dangzhenjiuhao/p/5791620.html

  

转载于:https://www.cnblogs.com/5icuke/p/8595111.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值