【问题标题】:Unable to read TLD "META-INF/c.tld" from standart JAR file无法从标准 JAR 文件中读取 TLD“META-INF/c.gtld”
【发布时间】:2015-12-15 10:03:38
【问题描述】:

我遇到了一个用 JSP 编写的新项目的问题。 一些细节: - 使用tomcat6。 - 使用 Java Oracle 6。 - 用于发展的 inteliji。

通过 Inteliji 解聚和运行应用程序时,我总是收到此错误:

 HTTP Status 500 - /login.jsp(1,63) Unable to read TLD "META-INF/c.tld" from JAR file "file:/var/lib/tomcat6/webapps/MyApp/WEB-INF/lib/standard.jar": org.apache.jasper.JasperException: Failed to load or instantiate TagLibraryValidator class: org.apache.taglibs.standard.tlv.JstlCoreTLV

我在 lib 中提取了 standart.jar,并且确实看到了 c.tld,其中包含在 jsp 文件中指定的正确 uri。

请您帮忙解决这个问题。

【问题讨论】:

  • 你应该把 JSTL jar 添加到你的类路径中。

标签: java spring jsp tomcat6 jsp-tags


【解决方案1】:

请使用https://mvnrepository.com/artifact/javax.servlet/jstl/1.2

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jstl</artifactId>
    <version>1.2</version>
</dependency>

我使用了https://mvnrepository.com/artifact/javax.servlet.jsp.jstl/jstl 并得到了同样的错误。

【讨论】:

    【解决方案2】:

    在你的 JSP 中写

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

    在WEB.xml中

      <taglib>
        <taglib-uri>/WEB-INF/jstl/c.tld</taglib-uri>
        <taglib-location>/WEB-INF/jstl/c.tld</taglib-location>
      </taglib>
    

    WEB-INF/jstl 中的文件

    WEB-INF/lib 中的文件

    【讨论】:

      猜你喜欢
      • 2012-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-23
      • 2020-11-03
      • 1970-01-01
      相关资源
      最近更新 更多