org.apache.jasper.JasperException: 无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsf/core]

本文介绍了一种常见的Tomcat 500错误,该错误由JSF Taglib在web.xml中未正确配置引起。通过删除jsp文件中不兼容的JSF Taglib标签,项目可以正常启动。此外,还提供了调整Eclipse默认jsp文件模板的方法,以避免未来出现类似问题。
摘要由CSDN通过智能技术生成

严重: Servlet[jsp]的Servlet.service()抛出异常 org.apache.jasper.JasperException: 无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsf/core]

Tomcat访问项目报500
百度到的解决办法是手动导入jstl.jar 没解决
根据报的错误 去看了下web-inf下的.jsp文件发现

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

下面多了两个标签:

<%@ taglib prefix="f"  uri="http://java.sun.com/jsf/core"%>
<%@ taglib prefix="h"  uri="http://java.sun.com/jsf/html"%>

把项目用到的jsp文件中的这两个标签删掉,重新启动项目就没报错了
然后修改了下eclipse默认的创建jsp文件的模板修改eclipse默认jsp文件模板地址

希望能帮到你

这个错误信息是Apache Jasper(Tomcat服务器的Servlet编译器)抛出的,通常发生在试图使用JSTL(JavaServer Pages Standard Tag Library)库时遇到问题。JasperException表示在读取配置文件web.xml或应用部署jar找不到指定的资源,即它无法找到`https://jakarta.ee/jstl/core`所指的JSTL核心标签库。 JSTL是一个Java语言编写的API,用于简化Java Server Pages (JSP) 的动态元素处理。web.xml是Web应用程序部署描述符,其应该包含关于如何加载第三方库的信息,包括JSTL。如果JSTL库未正确添加到项目classpath或者配置文件没有正确引用,就会导致这个异常。 解决这个问题,你可以按照以下步骤操作: 1. 确认是否已经正确地将JSTL库(如jstl.jar或standard.jar)添加到了项目的构建路径(对于Maven项目,可能是pom.xml依赖管理部分;对于Gradle项目,是dependencies部分)。 2. 检查web.xml文件,看看是否包含了正确的JSTL库引用,并确保`<taglib>`标签的位置和内容是正确的,例如: ```xml <taglib> <taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri> <taglib-location>/WEB-INF/lib/jstl.jar</taglib-location> </taglib> ``` 这里的`taglib-uri`指向JSTL的URI,`taglib-location`是指向实际JAR文件的位置。 3. 如果使用了WAR包部署,检查war文件内的结构,确保JSTL库也在正确的目录下。 4. 清理并重新构建项目,有时候仅删除服务器的缓存也能解决问题。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值