URL路径以及Tomcat本身引入的jar包会导致的 SpringMVC项目 404问题、Tomcat调试日志的开启及总结
一、URL路径导致的 SpringMVC项目 404问题
SpringMVC项目的各项代码都没有问题,但是在页面请求时仍然显示404,编译的时候报了下面的问题:
org.apache.jasper.servlet.TldScanner.scanJars 至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。 在扫描期间跳过不需要的JAR可以缩短启动时间和JSP编译时间。
14-Oct-2024 17:53:55.932 信息 [RMI TCP Connection(2)-127.0.0.1]
但实际上面的问题并不致命,只要能打开浏览器,说明JAVA代码编译成功,后面页面404的问题就有其它原因。我后来在排查的过程中发现是页面的URL问题,SpringMVC 默认的请求URL都是带项目名称的,如下图 URL 部分,我习惯设置的时候把这个URL部分时的项目名称删掉,导致了404错误。

这里建议不用改,要改的话就不能光在这个地方修改,那里就会出错。改这里之前需要先修改请求路径的规则,有两种方法:
一是进行Tomcat配置修改,在HOST配置里操作,不建议这样处理,麻烦。
二就是在Tomcat 配置里修改,如下图,在运行Tomcat的时候注意左上角 Tomca 的图标是不是有一个叉号,如果有说明 Tomca 未正常配置,需要点击一下修复进行处理。实际也就是下面这个图的编辑界面。在应用程序上下文处配置请求的URL前缀,也就是设置带不带项目名或者你自定义一个前缀路径,这样上面配置的请求地址与下面的前缀一样才能正确。
建议直接用默认的就行,路径上增加项目名称也方便多项目调试进行区分,这样的话 URL上基本就不会导致问题。
二、Tomcat本身引入的jar包导致404问题及Tomcat调试日志开启
1. Tomcat本身引入的jar包导致404问题
如下图,Tomcat 库栏中我并没有做任何操作。但发现我的 Tomcat9 和 Tomcat10 是有区别的,因此编译的时候可能会导致问题。我后来直接就只使用 Tomcat 10了,毕竟目前不需要去适配和调试各个版本的 Tomcat,太高版本的Tomcat也更容易引起问题,暂时就主要使用 Tomcat9吧。

2. 关于启用Tomcat调试日志记录的开启:
开发中很有必要启用 Tomcat 调试日志记录,以便在终端能直观地查看Tomcat的错误。通过在 Tomcat 的 logging.properties 文件中启用相关记录器的调试级别,你可以获取有关已扫描但未在其中找到TLD的更多信息。有助于你更好地了解问题的根本原因。
修改位置:Tomcat 配置目录conf下的 logging.properties 文件,找到如下行,把注释去掉即可。这样Tomcat将启用 TldScanner 的详细日志记录,查看Tomcat的日志文件可以获取更多信息。
org.apache.jasper.servlet.TldScanner.level = FINE
三、SpringMVC 项目搭建过程的整体总结
目前通过这几篇文章,一是两各种方式实现的SpringMVC项目过程,链接如下:
JAVA开发中SpringMVC框架的使用及常见的404问题原因以及SpringMVC框架基于注解的开发实例-CSDN博客文章浏览阅读513次,点赞11次,收藏25次。在项目执行的时候可能容易遇到404错误,如果代码上没有什么问题,错误可能出在使用tomcat运行的时候未把lib包放到tomcat下,导致tomcat运行时找不到jar包从而运行出错。另外上面在配置springMVC框架的时候需要指定contextConfigLocation上下文的配置文件地址,即SpringMVC集合spring时,spring需要用的配置文件,如上我们使用的springmvc-servlet.xml文件,此文件放在java源代码下的src/main/resources目录中。https://linge.blog.csdn.net/article/details/142846672 以及两篇报错的文章 (web.xml 配置)如下一:使用SpringMVC搭建WEB项目时报错404的问题排查解决以及web.xml配置文件init-param行标红问题-CSDN博客文章浏览阅读508次,点赞10次,收藏13次。还有Tomcat的版本过高,目前用的是10 版本,于是试着 针对 Tomcat 的版本也进行降降,就把 Tomcat10版本降到了 Tomcat9版本。经过检查,基本的错误原因都可以完全排除,程序代码没有问题,WEB导入包也没有问题,静态资源过滤以及编译出来的 out 目录中的文件也都正常,但是就是报 404 错误,而且 Tomcat 页面就只是显示无法找到资源,也没有更编辑 的错误。于是修改了 spring 配置中的声明问,解决了声明的问题之后又碰到了一个新的问题。认真看了看控制台的日志,发现有。
https://linge.blog.csdn.net/article/details/142884626
如下二(程序中标红的问题):
SpringMVC开发web.servlet.DispatcherServlet、控制器类 implements Controller标红及maven.plugins:maven-site..标红问题-CSDN博客文章浏览阅读323次,点赞9次,收藏12次。在配置SpringMVC项目时,org.springframework.web.servlet.DispatcherServlet 标红显示:org.springframework.web.servlet.DispatcherServlet' 未分配到'javax.servlet.Servlet,jakarta.servlet.程序都能运行,但是org.springframework.web.servlet.DispatcherServlet 依然标红。虽然我的程序是能正常运行的。https://linge.blog.csdn.net/article/details/142894627 以及编译中的问题和最后记录的一个完整的项目代码示例如下:
找到多个名为[spring_web]的片段、TldScanner.scanJars至少有一个JAR被扫描问题..以及一个SpringMVC项目运行起来的完整配置和代码示例程序-CSDN博客文章浏览阅读295次,点赞12次,收藏8次。找到多个名为[spring_web]的片段、TldScanner.scanJars至少有一个JAR被扫描问题..以及一个SpringMVC项目运行起来的完整配置和代码示例程序。这里如果在调试的时候视图出错,可以不用视图加载,直接使用RestController 返回内容即可。https://linge.blog.csdn.net/article/details/142915607 就基本能排除 SpringMVC 项目搭建过程中的各种问题。
相关文章:
URL路径以及Tomcat本身引入的jar包会导致的 SpringMVC项目 404问题、Tomcat调试日志的开启及总结
一、URL路径导致的 SpringMVC项目 404问题 SpringMVC项目的各项代码都没有问题,但是在页面请求时仍然显示404,编译的时候报了下面的问题: org.apache.jasper.servlet.TldScanner.scanJars 至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录…...
如何引起Java中的System.in.read()函数的异常
演示的为:关闭标准输入流System.in后再调用System.in.read就会报出IOException import java.io.IOException; import java.io.InputStream;public class Test {public static void main(String[] args) {InputStream in System.in;try {in.close();System.in.read();}catch (…...
深入理解Flutter鸿蒙next版本 中的Widget继承:使用extends获取数据与父类约束
目录 写在前面 什么是Widget继承? 基本概念 StatelessWidget与StatefulWidget build方法 创建自定义Widget 1. 继承StatelessWidget 2. 继承StatefulWidget并访问父类的约束 3. 继承其他自定义Widget并获取数据 写在最后 写在前面 在Flutter中,…...
Loss:Focal Loss for Dense Object Detection
目录 3. 焦点损失(Focal Loss)3.1. 平衡交叉熵3.2. 焦点损失定义3.3. 类别不平衡与模型初始化3.4. 类别不平衡与两阶段检测器4. RetinaNet 检测器。4.1. 推理与训练。3. 焦点损失(Focal Loss) 焦点损失(Focal Loss)旨在解决单阶段目标检测场景中训练时前景和背景类别之间…...
Unity3D中Excel表格的数据处理模块详解
前言 在Unity3D项目中,处理Excel表格数据是一项常见且重要的任务。通过Excel表格,我们可以方便地管理游戏配置、角色属性等数据内容。本文将详细介绍如何在Unity3D中实现Excel表格的数据处理模块,包括技术详解和代码实现。 对惹,…...
【python】OpenCV—Fun Mirrors
文章目录 1、准备工作2、原理介绍3、代码实现4、效果展示5、参考 1、准备工作 pip install vacm2、原理介绍 在OpenCV中,VCAM 库是一个用于简化创建三维曲面、定义虚拟摄像机、设置参数以及进行投影任务的工具。它特别适用于实现如哈哈镜等图像变形效果。 一、VC…...
QT IEEE754 16进制浮点数据转成10进制
IEEE754标准转换QT代码 qtcreator使用的ieee754标准的4字节数组与浮点数之间的转换方法,ieee754的4位数组如果转换成二进制后,大体结构是: 位序号12-910-32意义 符号位, 正数为0,负数为1. 指数位, 指数是…...
无人机+视频推流直播EasyCVR视频汇聚/EasyDSS平台在森林防护巡检中的解决方案
随着科技的飞速发展,无人机技术在各个领域的应用日益广泛,特别是在森林防护与巡检方面,无人机以其独特的优势,为传统林业管理带来了革命性的变化。本文将探讨无人机在森林防护巡检中的解决方案,分析其工作原理、优势及…...
Rancher—多集群Kubernetes管理平台
目录 一、Rancher 简介1.1 Rancher 和 k8s 的区别 二、Rancher 安装及配置2.1 安装 rancher2.2 登录 Rancher 平台2.3 Rancher 管理已存在的 k8s 集群2.4 创建名称空间 namespace2.5 创建 Deployment 资源2.6 创建 service2.7 Rancher 部署监控系统 一、Rancher 简介 Rancher …...
使用多IP香港站群服务器对网站管理seo优化提升排名有益处
在网站管理和优化中,选择合适的服务器是至关重要的。针对某些特定需求,使用多IP香港站群服务器可以带来明显的益处。本文将探讨使用多IP香港站群服务器 对网站管理的明显益处,并介绍其中的关键要点和优势。 I. 理解多IP香港站群服务器 1. 多I…...
网管平台(基础篇):网管系统的重要性
网管系统的核心地位:数字世界的稳定舵手 在信息技术日新月异的今天,网络如同一条无形的纽带,将世界紧密相连。然而,这条纽带背后隐藏着无数复杂的节点与链路,如何确保它们高效、稳定地运行,成为了一个亟待解…...
Ubuntu20.04下安装多CUDA版本,以及后续切换卸载
本方案的前提是假设机子上已经有一个版本的cuda,现在需要支持新的torch2.1.2和torchvision0.16.2,于是来安装新的cuda 一、选择版本 如果我想安装支持torch2.1.2的cuda版本,到官网(https://pytorch.org/get-started/previous-ve…...
图像处理高频面试题及答案
目录 高频面试题及答案1. 什么是图像处理?2. 什么是图像的分辨率?3. 图像的颜色空间是什么?4. 什么是边缘检测,为什么重要?5. 解释一下图像增强的常见方法。6. 什么是图像的直方图?7. 什么是图像的去噪声?8. 什么是图像分割,常用的方法有哪些?9. 图像滤波的目的是什么…...
尤雨溪都打赏的虚拟列表组件,到底有多强
尤雨溪都打赏的虚拟列表组件,到底有多强? 在前端开发中,性能优化永远是绕不开的主题。今天就带你看看 vue-virtual-scroller,一款让你滚动页面时流畅得像火箭一样的 Vue 组件。本文将简单介绍这个组件的主要功能、技术特点&#x…...
FrameWork使用EfCore数据库映射举例
Microsoft.EntityFrameworkCore新的版本不支持FrameWork框架。 这里举例使用旧版本实现数据存取 首先下载 Microsoft.EntityFrameworkCore 版本控制在2.1.14以下 同样下载Microsoft.EntityFrameworkCore.sqlite 举例时间记录 public class RunTimeInfo{[Key]public int Id { g…...
汽车与航空领域的功能安全对比:ISO 26262-6 与 DO-178C 的差异浅析
ISO 26262-6 和 DO-178C (航空系统与设备认证中的软件考量)。是汽车和航空领域分别广泛应用的软件安全标准。它们的共同目标是确保系统软件可靠性,减少系统软件故障对生命安全的威胁,但在具体的软件安全方案和规范实施上存在明显的…...
linux命令之lspci用法
lspci 显示当前主机的所有PCI总线信息 补充说明 lspci命令 用于显示当前主机的所有PCI总线信息,以及所有已连接的PCI设备信息。 语法 lspci(选项)选项 -n:以数字方式显示PCI厂商和设备代码; -t:以树状结构显示PCI设备的层次…...
虚幻闪烁灯光材质
创建一个材质 材质域改成光照函数 , Time让材质动起来 参数B用来控制速度 , Sine 让灯光闪烁 , Frac 增加了闪烁细节 把材质放到灯光材质上 效果还是挺不错的! 可以用于一些恐怖游戏~...
UNION ALL函数用法
文章目录 1. 什么是 UNION ALL?2. UNION ALL 的特点2.1 不去重2.2 性能更优2.3 列数和数据类型 3. 示例应用3.1 基本示例3.2 结合其他 SQL 功能3.3 使用子查询3.4 转换操作(leetcode真题) 4. 注意事项5. 结论 在数据库查询中, 合并多个结果集是一个常见…...
JavaWeb合集14-WebSocket
十四、WebSocket WebSocket是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工通信,浏览器和服务器只需要完成一次握手, 两者之间就可以创建持久性的连接,并进行双向数据传输。 HTTP协议和WebSocket协议对比: HTTP是短连…...
如何3步快速检测微信单向好友:免费开源工具完整教程
如何3步快速检测微信单向好友:免费开源工具完整教程 【免费下载链接】WechatRealFriends 微信好友关系一键检测,基于微信ipad协议,看看有没有朋友偷偷删掉或者拉黑你 项目地址: https://gitcode.com/gh_mirrors/we/WechatRealFriends …...
周末收听:中国之声DRM短波信号实收记录
本周末(4月4日)在成都用接收了CNR中国之声的DRM短波广播,记录了13825 kHz和13810 kHz两个频率的信号数据。一个从北京发射,一个从昆明发射,传播路径和信号特征差异明显。接收条件接收地点:成都。接收时间&a…...
3步实现小说自由:用这款工具轻松下载并永久保存番茄小说
3步实现小说自由:用这款工具轻松下载并永久保存番茄小说 【免费下载链接】fanqienovel-downloader 下载番茄小说 项目地址: https://gitcode.com/gh_mirrors/fa/fanqienovel-downloader 还在为喜欢的小说无法离线阅读而烦恼?想把精彩故事保存到本…...
5大技术突破:VR-Reversal如何重新定义普通设备的VR视频解码体验
5大技术突破:VR-Reversal如何重新定义普通设备的VR视频解码体验 【免费下载链接】VR-reversal VR-Reversal - Player for conversion of 3D video to 2D with optional saving of head tracking data and rendering out of 2D copies. 项目地址: https://gitcode.…...
从零到精通:Ryujinx模拟器全方位技术指南
从零到精通:Ryujinx模拟器全方位技术指南 【免费下载链接】Ryujinx 用 C# 编写的实验性 Nintendo Switch 模拟器 项目地址: https://gitcode.com/GitHub_Trending/ry/Ryujinx Ryujinx是一款采用C#开发的开源Nintendo Switch模拟器,通过动态编译和…...
HTTPie 完全指南:比 curl 更人性化的 HTTP 调试工具
HTTPie 完全指南:比 curl 更人性化的 HTTP 调试工具如果你厌倦了 curl 的冗长语法,HTTPie 是一个值得尝试的替代方案。一、HTTPie 是什么 HTTPie(发音:aitch-tee-tee-pie)是一个命令行 HTTP 客户端,目标是让…...
OpenClaw(小龙虾)Windows 本地部署教程|一键安装 + 避坑指南
前言 OpenClaw 作为开源 AI 智能体工具,支持本地运行、可视化操作,可通过自然语言指令完成文件整理、浏览器自动化、数据提取等电脑操作,适配 Windows 多版本系统,部署流程简洁,适合办公场景与技术爱好者使用。本文整…...
微信聊天记录数据备份与智能分析一站式解决方案
微信聊天记录数据备份与智能分析一站式解决方案 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/WeChatMsg 你是否经…...
通义千问2.5-0.5B-Instruct实战教程:RTX3060推理速度调优
通义千问2.5-0.5B-Instruct实战教程:RTX3060推理速度调优 5亿参数,1GB显存,RTX3060上实现180 tokens/s的推理速度 1. 开篇:小模型的大能量 你是否遇到过这样的困境:想要在本地运行AI大模型,但显存不够用&a…...
MPC3424高精度Δ-Σ ADC嵌入式驱动设计与工业实践
1. MPC3424高精度Δ-Σ模数转换器驱动库深度解析与工程实践1.1 芯片特性与工程定位MPC3424是Microchip公司推出的4通道、18位分辨率、IC接口的Δ-Σ型模数转换器(ADC),专为高精度工业测量、传感器信号调理和数据采集系统设计。其核心优势在于…...
