Tomcat10的常见报错

家电修理 2023-07-16 19:16www.caominkang.com电器维修

目录

一、IDEA里乱码

二、至少有一个JAR被扫描用于TLD但尚未包含TLD

三、HTTP404

1、jar包存在问题

2、路径

四、无法在eb.xml或使用此应用程序部署的jar文件中解析绝对uri[http://java.sun./jsp/jstl/core]

五、java.util.zip.ZipException: zip file is empty 


一、IDEA里乱码

原因是tomcat10默认编码是UTF-8,而JDK18以后的默认编码是GBK

解决方案打开tomcat的conflogging.properties,将UTF-8编码修改为GBK

有很多处,图片仅为举例

二、至少有一个JAR被扫描用于TLD但尚未包含TLD

解决办案不让tomcat扫描jar就行

在tomcat根目录下的conf文件夹下的catalina.properties(记得备份这个文件)中,找到tomcat.util.scan.StandardJarScanFilter.jarsToSkip

 修改为

tomcat.util.scan.StandardJarScanFilter.jarsToSkip=.jar?

三、HTTP404

 这个就比较玄学了

可能的原因

1、jar包存在问题

2、网址和工件不匹配

1、jar包存在问题

在tomcat10中,一些jar包发生了改变

javax要换成jakarta

jstl和standard要换成jakarta.servlet.jsp.jstl

这些jar包可以去Maven中央仓库下载

中央仓库https://repo.maven.apache./maven2/

2、路径

举个例子

工件部署为/exam6_ar_exploded

那么相应的界面路径就应该变为http/localhost::8080//exam6_ar_exploded/XXXX

这后面的/XXXX就是在重写的servlet里的@WebServlet("/XXXX)

四、无法在eb.xml或使用此应用程序部署的jar文件中解析绝对uri[http://java.sun./jsp/jstl/core]

有时候core会变成fmt

别人说将jstl和standard解压后放到WER-INF下的lib中

别忘了现在是tomcat10

所以解决方法应该是

将jstl和standard换成jakarta.servlet.jsp.jstl

五、java.util.zip.ZipException: zip file is empty 

这个是我在解压了jstl和standard后出现的,大致意思是这两个变成了空的压缩包,重新添加依赖就可以了

以后若还碰到其它的,再进行更新

Copyright © 2016-2025 www.caominkang.com 曹敏电脑维修网 版权所有 Power by