当前位置: 首页 > 知识库问答 >
问题:

jstl无法使用错误(无法解析绝对URI:[http://java.sun.com/jsp/jstl/core])

窦彦君
2023-03-14

为了尝试使用jstl,我用Maven安装了JSTL1.2库。但是,当我通过以下消息运行jsp页面时,“绝对URI:[http://java.sun.com/jsp/jstl/core]不能在web.xml或与此应用程序一起部署的jar文件中解析”

我已经阅读了这个stackoverflow页面,按照我的要求做了,但它并没有解决我的问题。

    HTTP Status 500 – Internal Server Error

Type Exception Report

Message 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

Description The server encountered an unexpected condition that prevented it from fulfilling the request.

Exception

org.apache.jasper.JasperException: 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
    org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:55)
    org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:293)
    org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:80)
    org.apache.jasper.compiler.TagLibraryInfoImpl.generateTldResourcePath(TagLibraryInfoImpl.java:251)
    org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:122)
    org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:434)
    org.apache.jasper.compiler.Parser.parseDirective(Parser.java:492)
    org.apache.jasper.compiler.Parser.parseElements(Parser.java:1448)
    org.apache.jasper.compiler.Parser.parse(Parser.java:145)
    org.apache.jasper.compiler.ParserController.doParse(ParserController.java:244)
    org.apache.jasper.compiler.ParserController.parse(ParserController.java:105)
    org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:203)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:374)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:351)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:335)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:601)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:368)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:385)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
Note The full stack trace of the root cause is available in the server logs.

Apache Tomcat/8.5.16
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>ch06</groupId>
    <artifactId>ch06</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <build>
        <sourceDirectory>src</sourceDirectory>
        <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.6.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
    <dependencies>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
            <version>1.2</version>
        </dependency>
  </dependencies>
</project>

这是我的web.xml文件中简洁的一部分。

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
                             http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
</web-app>

这是我的jsp代码,其中包括jstl核心库。

<%@page contentType="text/html" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<c:import url="/includes/header.html" />

共有1个答案

宰父宾实
2023-03-14

在我将maven repository文件夹中的jstl-1.2.jar复制到WEB-INF/lib文件夹后,它就可以工作了。

 类似资料:
  • 问题内容: 这是我的JSP页面的taglib指令: 我收到以下错误: 我已经在 / WEB-INF / lib 文件夹中添加了JAR文件 jstl.jar 和 standard.jar 。 谁能告诉我我在哪里犯错了? __ 问题答案: 看起来您正在使用带有1.1 / 1.2的taglib URI的JSTL 1.0。您有不同版本的JSTL: 1.0 :存在两个JAR文件和。Taglib URI 在路

  • 我在用 嵌入式Jetty 9。 Maven Java 1.7 JSTL 当我在Eclipse中运行应用程序并浏览到包含JSTL标记的网页时,它工作得很好。当我将它捆绑在可执行jar中并从cmd提示符运行时,我得到 我是不是漏掉了一些明显的东西!?

  • 问题内容: 这是我的JSP页面的taglib指令: 我收到以下错误: 我已经在 / WEB-INF / lib 文件夹中添加了JAR文件 jstl.jar 和 standard.jar 。 谁能告诉我我在哪里犯错了? __ 问题答案: 看起来您正在使用带有1.1 / 1.2的taglib URI的JSTL 1.0。您有不同版本的JSTL: 1.0 :存在两个JAR文件和。Taglib URI 在路

  • 第1行和第2行有什么不同吗。jsp文件中的第2行没有给出任何错误,但另一个jsp中的第1行给出了错误 真正的JSTL1.0taglib使用URI http://java.sun.com/JSTL/core。 真正的JSTL 1.1/1.2 taglib使用URI http://java.sun.com/jsp/JSTL/core。 Facelets1.x使用URI http://java.sun.

  • 我一直在寻找解决办法。这是最接近的一次了。所有这些都不起作用。我得到以下例外。我用的是Spring靴。我将它作为Spring boot应用程序运行。不是在Tomcat里面。 这是我的pom。 在我看来,一切都准备就绪。我还是会出错。我看了看那些对专家的依赖。我可以看到

  • 我已经在JSP页面的最顶端包含了以下内容: 我已经将JSTL JAR文件放在了目录中。但是,JSP仍然不能解决taglib。我得到以下错误: 找不到“”的标记库描述符http://java.sun.com/jsp/jstl/core” 我正在使用Eclipse Juno,项目结构如下所示: