另外加一点,如何我把jsp中的     <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"  %>   改成:<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c"  %>
   同样会提示错误:
     type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: /JSTLExample/c_out.jsp(3,0) No such tag out in the tag library imported with prefix c
at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:94)
at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:428)
at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:219)
at org.apache.jasper.compiler.Parser.parseCustomTag(Parser.java:710)
at org.apache.jasper.compiler.Parser.parseElements(Parser.java:809)
at org.apache.jasper.compiler.Parser.parse(Parser.java:122)
at org.apache.jasper.compiler.ParserController.parse(ParserController.java:199)
at org.apache.jasper.compiler.ParserController.parse(ParserController.java:153)   ........

解决方案 »

  1.   

    jstl 1.1 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>jstl 1.0 <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
      

  2.   

    jstl 1.1 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>jstl 1.0 <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
    楼上这样的解释是正确的。还有一点,除了把jstl.jar和standard.jar复制到工作目录myjsp的WEB-INF\lib下,还需要把jakarta_taglibs_standard/tld/c.tld拷贝到工作目录myjsp得WEB-INF下如此配置在Tomcat5.0.28通过
      

  3.   

    但是我也发生一个问题,在JBoss里面,同样的配置为什么在JBoss里面布能够跑?我用的JBoss 3.2.6    JSTL 1.1.1  我在D:\jboss-3.2.6\lib下面拷入了jstl.jar和standard.jar
    在我的工程文件\WEB-INF\lib中也拷入了jstl.jar和standard.jar
    以及我的工程文件\WEB-INF\下拷入c.tld
    修改了相关的\WEB-INF\web.xml,如下:<?xml version="1.0" encoding="ISO-8859-1"?>
    <web-app version="2.4" 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 
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

    <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>
    </web-app>相关的index.jsp文件,如下:
    <%@ page contentType="text/html;charset=gbk" %>
    <%@ taglib uri="/WEB-INF/c.tld" prefix="c" %>
     
    <html>
      <head>
        <title>Count to 10 Example (using JSTL and scriptlet)</title>
      </head>
      <body>
        <%-- 这是利用JSTL 打印1到10 --%>
          利用JSTL 打印1到10 <p>
        <c:forEach var="i" begin="1" end="10" step="1">
          <c:out value="${i}" />
          <br/>
        </c:forEach>
        <%-- 这是利用JSP的scriptlet 打印1到10 --%>
        <p>    利用JSP的scriptlet 打印1到10   <p>
        <%  for(int i=1;i<=10;i++)  {%>
          <%=i%><br/>
        <%  } %>
     </body>
    </html>
      

  4.   

    在浏览器中运行时出错,如下:
    HTTP Status 500 -type Exception reportmessagedescription The server encountered an internal error () that prevented it from fulfilling this request.exceptionorg.apache.jasper.JasperException: Failed to load or instantiate TagLibraryValidator class: org.apache.taglibs.standard.tlv.JstlCoreTLV
    org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:50)
    org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:411)
    org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:283)
    org.apache.jasper.compiler.TagLibraryInfoImpl.createValidator(TagLibraryInfoImpl.java:649)
    org.apache.jasper.compiler.TagLibraryInfoImpl.parseTLD(TagLibraryInfoImpl.java:246)
    org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:162)
    org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:418)
    org.apache.jasper.compiler.Parser.parseDirective(Parser.java:483)
    org.apache.jasper.compiler.Parser.parseElements(Parser.java:1539)
    org.apache.jasper.compiler.Parser.parse(Parser.java:126)
    org.apache.jasper.compiler.ParserController.doParse(ParserController.java:220)
    org.apache.jasper.compiler.ParserController.parse(ParserController.java:101)
    org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:203)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:470)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
    org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:75)root causejava.lang.ClassNotFoundException: org.apache.taglibs.standard.tlv.JstlCoreTLV
    java.net.URLClassLoader$1.run(URLClassLoader.java:199)
    java.security.AccessController.doPrivileged(Native Method)
    java.net.URLClassLoader.findClass(URLClassLoader.java:187)
    java.lang.ClassLoader.loadClass(ClassLoader.java:289)
    java.lang.ClassLoader.loadClass(ClassLoader.java:235)
    org.apache.jasper.compiler.TagLibraryInfoImpl.createValidator(TagLibraryInfoImpl.java:645)
    org.apache.jasper.compiler.TagLibraryInfoImpl.parseTLD(TagLibraryInfoImpl.java:246)
    org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:162)
    org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:418)
    org.apache.jasper.compiler.Parser.parseDirective(Parser.java:483)
    org.apache.jasper.compiler.Parser.parseElements(Parser.java:1539)
    org.apache.jasper.compiler.Parser.parse(Parser.java:126)
    org.apache.jasper.compiler.ParserController.doParse(ParserController.java:220)
    org.apache.jasper.compiler.ParserController.parse(ParserController.java:101)
    org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:203)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:470)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
    org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:75)note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.
    Apache Tomcat/5.0.28
      

  5.   

    问题出在URL上面,jstl 1.0 <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
      

  6.   

    如果我用jstl 1.0 <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
    eclipse会在保存jsp.index的时候提示:Saved failure:null"
    如果用<%@ taglib uri="/WEB-INF/c.tld" prefix="c" %>
    在Tomcat5.0.28中同样用的上面的,没有问题。为什么??我google了一下:在下面的链接中有相似的情况:
    http://ryandaigle.com/pebble/2005/01/27/1106856324774.html
    是tomcat5.5.x里面的bug,解决的办法是在 自己应用程序的war文件中删除jsp-api.jar因为这个文件和tomcat5.5.x中/common/lib中的jsp-api.jar有冲突。但是我用的是jboss3.2.6。在D:\jboss-3.2.6\server\default\tmp\deploy没有jsp-api.jar。这个地方没明白为什么会出问题?
      

  7.   

    这个问题我今天是这样解决的:先在Tomcat5.0.28下面建立一个JSTL程序,确保它能够运行,然后再将服务器选择使用jboss3.2.6然后重新deploy,在浏览器中就可以浏览了。我用的是eclipse3.0.2+lomboz3.1
      

  8.   

    你的web.xml中没有添加tablib的说明吧
    在web.xml中添加
    <taglib>
          <taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri>
          <taglib-location>/WEB-INF/c.tld</taglib-location>
        </taglib>将c.tld copy到/WEB-INF/下
      

  9.   

    jstl 1.1 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>jstl 1.0 <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>tomcat 5.0以上版本是支持JSP 2.0标准的,如果使用JSTL 1.1,应该不用在/WEB-INF/下部署 *.tld文件,tomcat 会自动搜索\WEB-INF\lib下的JSTL文件;如果使用JSTL 1.0则要在/WEB-INF/下部署 *.tld文件。
      

  10.   

    把那两个jar文件放到common下边的lib里边就可以了
    什么都不用配制
    不用配置web.xml
      

  11.   

    尽量把tld文件放在web-inf的tlds目录下。在taglib uri中就直接制定这个相对地址即可,老是用http确实不是很可靠!