使用JSTL中的一个莫名其妙的问题以及解决

原创 2005年04月24日 21:19:00

昨天是我初次使用JSTL,因为我是用Eclipse开发的,就按照网上的一篇入门文章做下去:

1。下载并解压了Jakarta jstl 1.1.1.

2. 将解压后的lib目录下的两个jar文件拷贝到tomcat 下的自己的应用下的WEB-INF/lib目录下

3。将解压后的tld目录下的tld文件拷贝到到tomcat 下的自己的应用下的WEB-INF/目录下

4.修改web.xml为以下内容:

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">


<web-app  xmlns="http://java.sun.com/xml/ns/j2ee"   
     xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="
http://java.sun.com/xml/ns/j2ee web-app_2_4.xsd"  
      version="2.4">

 

 <welcome-file-list>
  <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>

 <error-page>
  <error-code>404</error-code>
  <location>/error.jsp</location>
 </error-page>
 <taglib>
    <taglib-uri>http://java.sun.com/jstl/fmt</taglib-uri>
    <taglib-location>/WEB-INF/fmt.tld</taglib-location>
</taglib>

<taglib>
    <taglib-uri>http://java.sun.com/jstl/fmt-rt</taglib-uri>
    <taglib-location>/WEB-INF/fmt-rt.tld</taglib-location>
</taglib>

<taglib>
    <taglib-uri>http://java.sun.com/jstl/core</taglib-uri>
    <taglib-location>/WEB-INF/c.tld</taglib-location>
</taglib>

<taglib>
    <taglib-uri>http://java.sun.com/jstl/core-rt</taglib-uri>
    <taglib-location>/WEB-INF/c-rt.tld</taglib-location>
</taglib>

<taglib>
    <taglib-uri>http://java.sun.com/jstl/sql</taglib-uri>
    <taglib-location>/WEB-INF/sql.tld</taglib-location>
</taglib>

<taglib>
    <taglib-uri>http://java.sun.com/jstl/sql-rt</taglib-uri>
    <taglib-location>/WEB-INF/sql-rt.tld</taglib-location>
</taglib>

<taglib>
    <taglib-uri>http://java.sun.com/jstl/x</taglib-uri>
    <taglib-location>/WEB-INF/x.tld</taglib-location>
</taglib>

<taglib>
    <taglib-uri>http://java.sun.com/jstl/x-rt</taglib-uri>
    <taglib-location>/WEB-INF/x-rt.tld</taglib-location>
</taglib>

</web-app>

然后,我把例子jsp加上去(count.jsp):

然后,我把例子jsp加上去(count.jsp):

<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<html>
  <head>
    <title>Count to 10 Example (using JSTL)</title>
  </head>

  <body>
    <c:forEach var="i" begin="1" end="10" step="1">
      <c:out value="${i}" />

      <br />
    </c:forEach>
  </body>
</html>

然后启动tomcat,开始测试,这时莫名其妙的错误出现了:

 

StandardWrapperValve[jsp]: Servlet.service() for servlet jsp threw exception
java.lang.AbstractMethodError: javax.servlet.jsp.PageContext.getVariableResolver()Ljavax/servlet/jsp/el/VariableResolver;
 at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:941)
 at org.apache.jsp.teslib3_jsp._jspx_meth_c_out_0(teslib3_jsp.java:143)
 at org.apache.jsp.teslib3_jsp._jspx_meth_c_forEach_0(teslib3_jsp.java:113)
 at org.apache.jsp.teslib3_jsp._jspService(teslib3_jsp.java:65)
 at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
 at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
 at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
 at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)

....

百思不得其解,查文档有的说是compiler 不对,或者lib没有加全,我反复检查均未发现错误(java 环境:jsdk1.4.2.7)

StandardWrapperValve[jsp]: Servlet.service() for servlet jsp threw exception
java.lang.AbstractMethodError: javax.servlet.jsp.PageContext.getVariableResolver()Ljavax/servlet/jsp/el/VariableResolver;
 at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:941)
 at org.apache.jsp.teslib3_jsp._jspx_meth_c_out_0(teslib3_jsp.java:143)
 at org.apache.jsp.teslib3_jsp._jspx_meth_c_forEach_0(teslib3_jsp.java:113)
 at org.apache.jsp.teslib3_jsp._jspService(teslib3_jsp.java:65)
 at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
 at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
 at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
 at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)

....

百思不得其解,查文档有的说是compiler 不对,或者lib没有加全,我反复检查均未发现错误(java 环境:jsdk1.4.2.7)

 在反复试验之后,我把web.xml中web-app的xmlns 和xsi属性去掉(红色部分),结果ok,但具体原因一直也不清楚,希望高手能说明。

说出来你可能不信!莫名其妙的问题浪费了一个下午的时间!!

哎,前些天把github的个人主页给CNAME到我自己买的一个域名上去了。但是这几天想了想,买的域名今年12月就要到期了,每年续期费接近100大洋,我就寻思着,反正有了github个人主页,干嘛还花那...

在使用FlashDevelop时,莫名其妙出现一个空的项目,无法删除,而且打不开FD

解决顽固的0字节文件夹无法删除问题 2006-10-25 17:59 我使用Windows XP,我的电脑里有一个文件夹经过多种方法的尝试都无法删除,在资源管理器里面删...

OpenVPN莫名其妙断线的问题及其解决-confirm

本文很短,目的在于confirm一下凌乱的《OpenVPN莫名其妙断线的问题及其解决》,如果看觉得我比较啰嗦,那么一定要看看最后一个小节,好在CSDN为每篇文章都自动添加了目录,可以直接跳转到最后一节...
  • dog250
  • dog250
  • 2013年08月03日 14:11
  • 14329

泛泰A850L清基带缓存工具,可解决莫名其妙的信号问题,只适用于泛泰A850L

注意只适用于泛泰A850L,其他机型请勿尝试,包括泛泰A850K或者A850S 原理: 先在刷机脚本里清除m9kefs1和m9kefs2分区(这俩分区在泛泰850里是做基带数据缓存用的,泛...

JasperReport:几个莫名其妙的问题的解决

JasperReport各种莫名奇妙问题的解决 JasperReportC/S报表struts2struts2-jasperreport-plugin          也许你不曾遇到如题问题...

解决word与PowerDesigner冲突导致编辑word文档时鼠标莫名其妙失灵的问题

编辑word文档时,鼠标莫名其妙的失灵,到头来都是PowerDesigner 12.5 惹的祸         相信很多朋友在工作中编辑文档的时候都是用Offcie套件中的word编辑的,不知道大家...

OpenVPN莫名其妙断线的问题及其解决

1.问题不得不说,这是一个OpenVPN的问题,该问题几乎每个使用OpenVPN的人都碰到过,也有很多人在网上发问,然而一直都没有人能给出解决办法,甚至很多帖子上表示因为这个问题而放弃了使用OpenV...
  • dog250
  • dog250
  • 2013年07月27日 15:13
  • 57127

莫名其妙的解决了一个莫名其妙的问题

这两天做一个cms的添加数据功能,本来很简单的一个功能,前天就写好了,昨天早上来了,想到昨天写的那个功能是在原来已经存在的一个类里写的,并且数据库中的表用的也是原来的,更严重的是还对原来的方法进行了修...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用JSTL中的一个莫名其妙的问题以及解决
举报原因:
原因补充:

(最多只允许输入30个字)