解決時間:2023/3/31,我使用的tomcat是8.5版本的,在整合SSM項目時在jsp中使用JSTL的核心標簽庫 - core,也就是使用c:forEach標簽遍歷出現(xiàn)了這個問題:無法在web.xml或使用此應(yīng)用程序部署的jar文件中解析絕對uri
不知道該怎么說明這個bug,因為我已經(jīng)在網(wǎng)上試過很多方法了。
比如:
-
jsp項目使用jstl(c標簽)及jstl.jar和standard.jar
這個是手動添加standard.jar 和 jstl.jar -
解決Tomcat10配置JSTL的問題
這個是通過maven添加servlet依賴、jsp依賴、jstl依賴、standard依賴,同時需要在tomcat的lib文件夾中手動添加前面列出的部分jar包 -
使用maven導(dǎo)入JSTL依賴出現(xiàn)異常
這個也是去maven中添加一些jar包 -
springMvc36-JavaEE-JSP基礎(chǔ)-EL表達式和JSTL標簽庫(Taglibs)
同上 -
無法在web.xml或使用此應(yīng)用程序部署的jar文件中解析絕對uri
手動將jar包添加到項目中的web-inf的lib文件夾中,同時將jar包放入到tomcat的lib文件夾中
基本上方法大同小異,都是引入一些jar包放到項目中或者tomcat中。結(jié)果使用這些方法我都失敗了,同時我在網(wǎng)上找了一圈解答都沒有發(fā)現(xiàn)原因,搞笑的是我之前搜索問題是:無法在web.xml或使用此應(yīng)用程序部署的jar文件中解析絕對uri,搜索出來的方法都沒成功,這個是我頁面上出現(xiàn)的報錯。
然后我將問題換成tomcat 中的錯誤信息:Servlet[springmvc]的Servlet.service()引發(fā)了具有根本原因的異常無法在web.xml或使用此應(yīng)用程序部署的jar文件中解析絕對uri:[http://java.sun.com/jsp/jstl/core],然后我按照網(wǎng)上的方法成功解決了。
解決方法
修改tomcat/conf/catalina.properties中的一行
tomcat.util.scan.StandardJarScanFilter.jarsToSkip=*.jar
替換為
tomcat.util.scan.StandardJarScanFilter.jarsToSkip=\
重新啟動tomcat后,項目就可以正常運行。就很神奇,別問原因,問就是我也不知道為什么!有知道的大佬麻煩說明一下,解答我的疑惑。
使用這篇文章的方法成功解決問題:
【問題解決】Servlet[springMVC]的Servlet.service()引發(fā)了具有根本原因的異常java.lang.ClassNotFoundException
我這篇文章僅供參考,我后面測試了一下使用c:forEach標簽需要使用那些jar包,發(fā)現(xiàn)如果不添加jstl這個jar包也會出現(xiàn)無法在web.xml或使用此應(yīng)用程序部署的jar文件中解析絕對uri這個問題,至于其他的standard.jar,standard-impl等等jar包我都沒有引入,Tomcat的lib中我也沒有添加其他解決方案中的jar包,也可以使用c:forEach標簽。
如果使用我的方法不成功,可以去看看我上面列出的一些解決方案試試。文章來源:http://www.zghlxwxcb.cn/news/detail-732711.html
在此貼出我的maven依賴,供需要的人參考:文章來源地址http://www.zghlxwxcb.cn/news/detail-732711.html
<!--引入junit-->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<!--引入spring相關(guān)-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.3.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.3.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>4.3.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.3.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>4.3.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>4.3.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-expression</artifactId>
<version>4.3.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>4.3.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>4.3.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>4.3.2.RELEASE</version>
</dependency>
<!--引入springmvc-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.3.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.2.8</version>
</dependency>
<!--引入spring-mybatis-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.3.2</version>
</dependency>
<!--引入gson-->
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.2</version>
</dependency>
<!--引入log4j-->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.25</version>
</dependency>
<!--引入oracle驅(qū)動-->
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0</version>
</dependency>
<!--引入mysql-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.11</version>
</dependency>
<!--引入servlet-api-->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<!--引入jstl-->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<!--druid-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.19</version>
</dependency>
<!--引入lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.8</version>
<scope>provided</scope>
</dependency>
<!--spring-test-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>4.3.2.RELEASE</version>
<scope>test</scope>
</dependency>
到了這里,關(guān)于【已解決】無法在web.xml或使用此應(yīng)用程序部署的jar文件中解析絕對uri:[http://java.sun.com/jsp/jstl/core]的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!