在使用 Tomcat 进行 Java Web 开发的时候,经常会遇到以下 HTTP 404 错误:

错误代码为 HTTP 404(未找到),描述信息是:

“The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.”

此错误表示服务器找不到请求的资源(JSP,HTML,图像等),并返回 HTTP 状态代码404。大多数时候,可以通过更正 URL 来解决此错误。但有的时候并非那么简单。

在这里列出一些可能的原因,以及如何在使用 Tomcat 的 Java Web 开发中修复错误 HTTP 404。

URL 没有任何 Java Servlet 进行处理

检查 servlet 类中的 URL 映射,确保请求的 URL 是由 servlet 处理的。 例如:

@WebServlet("/view_book")

public class ViewBookServlet extends HttpServlet {

...

}

上面的 servlet 可以处理 /view_book。如果请求的 URL 是 /view_books,则服务器将引发 HTTP 404 错误。可以通过更正 URL 或更正 @WebServlet 注解中的 URL 映射来进行修复。

在旧的 Java Web 应用程序中,需要检查 Web 部署描述符文件 web.xml,其中由将 Java servlet 映射到 URL 的配置,如下所示:

ViewBookServlet

/view_book

Java Servlet 转发到不存在的资源

在这种情况下,请求的 URL 由 Java servlet 处理,但是 servlet 随后转发到一个不存在的资源(JSP,HTML…),如下所示:

servlet 类中的代码如下:

String registerForm = "frontend/registerform.jsp";

RequestDispatcher dispatcher = request.getRequestDispatcher(registerForm);

dispatcher.forward(request, response);

可以更正 servlet 中的转发路径来进行修复,并确保转发的资源确实存在。

网址区分大小写

注意,Tomcat 中的 URL 区分大小写,例如 /Register 与 /register 不同。 因此需要检查请求 URL 中的字母并使用正确的大小写。

还要注意 URL 中的 Web 应用程序名称的大小写,例如 http://localhost:8080/BookstoreWebsite/ 与 http://localhost:8080/BookStoreWebsite/ 是不同的。

最后,不应让用户看到服务器呈现的原始 HTTP 404 错误页面。 而是应该设计自己的用户友好型 404 错误页面。

java访问错误404_如何解决 Java web 项目中的 404 错误相关推荐

  1. JAVA Web项目中所出现错误及解决方式合集(不断更新中)

    JAVA Web项目中所出现错误及解决方式合集 前言 一.几个或许会用到的软件下载官网 二.Eclipse的[preferences]下没有[sever]选项 三.Tomcat的安装路径找不到 四.T ...

  2. idea创建web项目运行报404错误_IDEA JavaWeb项目启动运行后出现404错误的解决方法...

    404这个错误真的是一言难尽!不过大多是配置文件出错,认真修改还是可以的 1.web.xml配置错误: 默认首页没有写的,在web.xml添加一个就行(前提是你有jsp页面,名字不要写错): 比如这个 ...

  3. idea创建web项目运行报404错误_使用IDEA新建Web工程启动报404的错误

    新换了一个项目组被人吐槽配置文件都能写错,所以打算从头开始一步步搭建一个项目,包含ssm基础框架.mongodb工具类.redis工具类.jsf配置.log配置等 今天先来搭建一个web工程.工程搭建 ...

  4. java输出的汉字变成乱码_Java Web项目中解决中文乱码方法总结

    一.了解常识: 1.UTF-8国际编码,GBK中文编码.GBK包含GB2312,即如果通过GB2312编码后可以通过GBK解码,反之可能不成立; 2.web tomcat:默认是ISO8859-1,不 ...

  5. 编写高质量代码改善java程序的151个建议——[110-117]异常及Web项目中异常处理

    编写高质量代码改善java程序的151个建议--[110-117]异常及Web项目中异常处理 原创地址:http://www.cnblogs.com/Alandre/(泥沙砖瓦浆木匠),需要转载的,保 ...

  6. 实战:在Java Web项目中使用HBase

    在此之前我们使用MySQL作为数据源,但发现这数据增长速度太快,并且由于种种原因,因此必须使用HBase,所以我们要把Mysql表里面的数据迁移到HBase中,在这里我就不讲解.不争论为什么要使用HB ...

  7. java web access_Java Web项目中连接Access数据库的配置方法

    本文是对前几天的"JDBC连接Access数据库的几种方式"这篇的升级.因为在做一些小项目的时候遇到的问题,因此才决定写这篇博客的.昨天已经将博客公布了.可是后来经过一些验证有点问 ...

  8. Java Web项目中使用Freemarker生成Word文档

    Web项目中生成Word文档的操作屡见不鲜,基于Java的解决方案也是很多的,包括使用Jacob.Apache POI.Java2Word.iText等各种方式,其实在从Office 2003开始,就 ...

  9. java web 操作word文档_Java Web项目中使用Freemarker生成Word文档

    Web项目中生成Word文档的操作屡见不鲜.基于Java的解决方式也是非常多的,包含使用Jacob.Apache POI.Java2Word.iText等各种方式,事实上在从Office 2003開始 ...

最新文章

  1. linux docker run 设置环境变量
  2. Spring Cloud -Zuul
  3. CKEditor上传视频(java)
  4. 反思坚定前进:定时记录 定时总结 一定要拿下目标!一定要心无旁骛!
  5. Mac连接远程Linux管理文件(samba)
  6. 422器件与lvds接收器的区别_SPI、I2C、UART三种串行总线的原理、区别
  7. 第 2-3 课:抽象类和接口 + 面试题
  8. python 笔记 之 练习答案-ABCD乘以9=DCBA
  9. Spring的IoC容器实现原理(一)#loadBeanDefinition
  10. 数据库系统概论总结(第五版)
  11. php获取sqlserver时间,PHP_php操作sqlserver关于时间日期读取的小小见解,上周五,要做一个php 同时对mys - phpStudy...
  12. 深度学习语音降噪方法对比_一种语音降噪方法与流程
  13. 【日记本砸】21.02.01-12 过程只是过程,目的才是目的。
  14. C++ 组合 (Composition)
  15. 免费数字证书申请(https)
  16. arcgis路网密度计算、提取中心线、面积计算
  17. 团队协作软件之confluence和jira的配套使用
  18. 2022年Gartner新兴技术、人工智能技术成熟度曲线概述
  19. 【建筑性能分析入门笔记】建筑能耗建模(1)
  20. wx2540h配置教程_求高手解决H3C无线网络 WX3024E和无线AP设备之间的详细配置命令!...

热门文章

  1. 编码规范 | Java函数优雅之道(下)
  2. Kubernetes API 与 Operator,不为人知的开发者战争
  3. 4K超清,2500万人在线,猫晚直播技术全解读
  4. 函数计算搭建 Serverless Web 应用(二)- 自定义域名
  5. NAT网关之SNAT进阶使用(二)构建ECS级别SNAT出网方式
  6. IoT日志利器:嵌入式日志客户端(C Producer)发布
  7. Gartner:2022年全球IT支出将超4万亿美元,软件增速最高
  8. 奇点云集聚数据中台优势,加速企业数智化升级
  9. 全网最详细TCP参数讲解,再也不用担心没有面试机会了......
  10. 这些常见的分布式存储系统,你是否都了解?