IDEA配置Tomcat出现404,The requested resource is not available终极超详细解决方案

前言

在学习IDEA来写Java web项目的时候,初学者常常会因为Tomcat配置出现问题,而报404的错误。

在这里插入图片描述
非常的恶心,又不知道该怎么改。网上的资料东写一块西写一块,写的很不详细,本文就试图来一个超详细版,尽可能解决你面临的大部分问题。

用默认项目做测试

出现404的原因可能有很多种,可能是你的基本配置文件出了问题,也可能是你自己写的web项目有问题。我们从最基本最简单的来开始排查,一步一步看问题到底出在哪了。

首先我们看看能不能运行起来Tomcat默认的项目界面,就是这个界面:
在这里插入图片描述
这个项目该怎么找呢,下面截图来展示一下。首先你新建一个Maven工程(或者在你原有的Maven工程中),然后啥也不需要写。
在这里插入图片描述
新建一个这样的Tomcat local server。然后你点Deployment,点完之后大概是啥也没有,点右侧的+可以弹出一个这样的对话框。然后找到你的Tomcat的安装目录。在webapps文件夹下面有一个ROOT文件夹,选中它就好了。这样Deployment就配置完成。
在这里插入图片描述
然后你点Tomcat运行,如果正常跳转到默认页面,就说明你的基本配置,外部依赖啥的是没有问题的。(Tomcat安装正确,Java,Maven依赖正确)
在这里插入图片描述
网上有很多说法是这个URL的路径不能乱改之类的,否则会报404的错误,也有说法是deployment的路径必须和URL的路径一致之类的。如果你上面的配置都没问题,可以自行验证一下。看哪种情况会报404的错误。我先说一下观察后的结论:
在这里插入图片描述
你要去改的话,不要改URL,而要去改这个deployment下的Application context的路径,改它的话,URL会自动改的。最终他们两个路径后面的名称会保持一致。只要保持一致就可以了。不要先去改URL,如果先改URL,那后面对应的Application context不会更改。这样很容易就会出现文章最开始的404错误。

实际项目做测试

如果你用默认项目做测试没啥问题,下面就可以用你写的实际项目做测试了。这时候你也应该知道写Application context的时候应该注意什么了。

如果不是上面的配置问题,就是你实际项目代码中的路径配置出了问题。如果你用Maven新建一个Java Web,很有可能会是这样一个路径结构:
在这里插入图片描述
一般出问题往往是这个web.xml配置出错了。首先用Tomcat启动服务器,看看项目首页能不能正常显示,如果不能正常显示,看看你的web.xml的首页地址是否使用正确。如果首页正常显示了,但是跳转页面没有办法正常显示,很有可能是你的form路径配置出错了。我这里举一个例子。

比如在index.jsp中,你想做一个表单提交和跳转。
在这里插入图片描述
如果是跳转到静态页面,看看你的action路径配置的是否正确。如果是动态页面,比如你想将某一个表单结果提交到servlet,就不要按照相对路径去写了。这时候需要在web.xml进行相应的url_patternmapping的配置,但这样的配置很有可能会出一些错,导致你遇到404的问题。所以,我这里强烈推荐大家使用注解的方式进行配置,而不要使用在web.xml配置url_patternmapping,就比如说我对这个LoginServlet进行配置,只需要在
在这里插入图片描述
这个LoginServlet中添加一句注解就可以了。

@WebServlet(urlPatterns = "/LoginServlet")
public class LoginServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String userPass = req.getParameter("inputPassword");
        System.out.println(userPass);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doGet(req, resp);
    }
}

这样之前的form表单就会正常提交和跳转,不会出现404的错误。

以上几点都搞定的话,基本就可以解决大部分新手遇到的404的问题。

在使用IDEA进行Java web项目开发时,初学者经常会遇到Tomcat配置出现问题而导致404错误的情况。一种常见的情况是在项目部署过程中出现了错误。要解决这个问题,首先我们可以尝试运行Tomcat默认的项目界面来验证基本配置和依赖是否正确。可以按照以下步骤进行操作: 1. 新建一个Maven工程或者在已有的Maven工程中进行操作。 2. 新建一个Tomcat local server。在IDEA中,我们可以通过点击工具栏上的"Edit Configurations"按钮,然后点击"+"号来创建一个Tomcat服务器配置。 3. 在Tomcat服务器配置中,点击"Deployment"选项卡。然后点击右侧的"+"号来添加一个部署。 4. 在弹出的对话框中,找到你的Tomcat安装目录,然后选择其中的webapps文件夹下的ROOT文件夹。这样配置后,Deployment就完成了。 5. 点击Tomcat运行按钮,如果能够正常跳转到默认页面,那么说明基本配置和外部依赖都没有问题。(前提是Tomcat安装正确,并且Java和Maven依赖配置正确) 6. 如果以上配置都没有问题,但仍然遇到404错误,可以考虑修改Deployment下的Application context的路径。修改它的路径会自动改变URL的路径。确保这两个路径保持一致即可。不要先改URL,否则对应的Application context路径不会自动更改,这样容易导致404错误。 通过观察和实践,我们可以得出结论:如果想要修改路径,应该先修改Application context的路径,而不是直接修改URL。确保最终两个路径的名称保持一致即可。不要先改URL,否则后面对应的Application context路径不会自动更改,这样容易导致404错误的出现。 总结一下,当我们在IDEA中使用Tomcat时遇到404错误时,首先要检查Tomcat的安装和配置是否正确,然后确定项目的部署和路径配置是否正确。如果问题仍然存在,可以尝试修改Application context的路径来解决。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [IDEA配置Tomcat出现404,The requested resource is not available终极详细解决方案](https://blog.csdn.net/Einstellung/article/details/107562549)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [idea部署web项目到tomcat报错404解决(转载)](https://blog.csdn.net/qq_40819395/article/details/127150286)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Einstellung

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值