IDEA JavaWeb项目启动运行后出现404错误的解决方法
作者:chaimhao 发布时间:2022-05-19 01:22:11
标签:IDEA,JavaWeb,404
404这个错误真的是一言难尽!不过大多是配置文件出错,认真修改还是可以的
1.web.xml配置错误:
默认首页没有写的,在web.xml添加一个就行(前提是你有jsp页面,名字不要写错):
比如这个:
<welcome-file-list>
<welcome-file>Login.jsp</welcome-file>
</welcome-file-list>
2.IDEA JavaWeb项目运行找不到对应Servlet映射的JSP页面
在servlet3.0以后提供了注解配置,这样就不需要在web.xml中配置。使用IDEA生成的servlet文件的注解配置如下(第一行):
@WebServlet(value = "/AdminServlet")
public class AdminServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
}
对于怎样配置请看:
路径:File > Settings > Editor > File and Code Templates > Other > Web > Java code templates 下第二个点开右边编辑模板
如下(这是我的模板):
#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end
#parse("File Header.java")
@javax.servlet.annotation.WebServlet(value = "/${Entity_Name}")
public class ${Class_Name} extends javax.servlet.http.HttpServlet {
protected void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, java.io.IOException {
doPost(request,response);
}
protected void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, java.io.IOException {
}
}
3.创建了一个和以前项目名称相同的项目(项目名称结构一样),把以前的覆盖了 然后运行就404了;
第一时间想到的就是配置文件有错就开始找 :这个是我刚发现的解决办法:
启动运行后跳转的页面发现不是你定义的页面报404错误,这就需要你在workspace.xml里面找了:
你的项目名 > .idea > workspace.xml,找到里面不是你首次跳转的jsp的名字,修改为你定义的jsp名字
具体在这里:把名字修改一下就好了
<component name="RunManager">
<configuration name="tomcat" type="#com.intellij.j2ee.web.tomcat.TomcatRunConfigurationFactory" factoryName="Local" APPLICATION_SERVER_NAME="Tomcat 7.0.47" ALTERNATIVE_JRE_ENABLED="true" ALTERNATIVE_JRE_PATH="C:\Program Files\Java\jdk1.8.0_191\jre">
<option name="OPEN_IN_BROWSER_URL" value="http://localhost:8080/Login.jsp" />
<option name="UPDATING_POLICY" value="restart-server" />
<deployment>
<artifact name="SuShe:war exploded">
<settings>
<option name="CONTEXT_PATH" value="/" />
</settings>
</artifact>
</deployment>
<server-settings>
<option name="BASE_DIRECTORY_NAME" value="Login_jsp_SuShe" />
</server-settings>
<predefined_log_file id="Tomcat" enabled="true" />
<predefined_log_file id="Tomcat Catalina" enabled="true" />
<predefined_log_file id="Tomcat Manager" enabled="false" />
<predefined_log_file id="Tomcat Host Manager" enabled="false" />
<predefined_log_file id="Tomcat Localhost Access" enabled="false" />
<RunnerSettings RunnerId="Debug">
<option name="DEBUG_PORT" value="61238" />
</RunnerSettings>
<ConfigurationWrapper VM_VAR="JAVA_OPTS" RunnerId="Cover">
<option name="USE_ENV_VARIABLES" value="true" />
<STARTUP>
<option name="USE_DEFAULT" value="true" />
<option name="SCRIPT" value="" />
<option name="VM_PARAMETERS" value="" />
<option name="PROGRAM_PARAMETERS" value="" />
</STARTUP>
<SHUTDOWN>
<option name="USE_DEFAULT" value="true" />
<option name="SCRIPT" value="" />
<option name="VM_PARAMETERS" value="" />
<option name="PROGRAM_PARAMETERS" value="" />
</SHUTDOWN>
</ConfigurationWrapper>
<ConfigurationWrapper VM_VAR="JAVA_OPTS" RunnerId="Debug">
<option name="USE_ENV_VARIABLES" value="true" />
<STARTUP>
<option name="USE_DEFAULT" value="true" />
<option name="SCRIPT" value="" />
<option name="VM_PARAMETERS" value="" />
<option name="PROGRAM_PARAMETERS" value="" />
</STARTUP>
<SHUTDOWN>
<option name="USE_DEFAULT" value="true" />
<option name="SCRIPT" value="" />
<option name="VM_PARAMETERS" value="" />
<option name="PROGRAM_PARAMETERS" value="" />
</SHUTDOWN>
</ConfigurationWrapper>
<ConfigurationWrapper VM_VAR="JAVA_OPTS" RunnerId="Run">
<option name="USE_ENV_VARIABLES" value="true" />
<STARTUP>
<option name="USE_DEFAULT" value="true" />
<option name="SCRIPT" value="" />
<option name="VM_PARAMETERS" value="" />
<option name="PROGRAM_PARAMETERS" value="" />
</STARTUP>
<SHUTDOWN>
<option name="USE_DEFAULT" value="true" />
<option name="SCRIPT" value="" />
<option name="VM_PARAMETERS" value="" />
<option name="PROGRAM_PARAMETERS" value="" />
</SHUTDOWN>
</ConfigurationWrapper>
<method v="2">
<option name="BuildArtifacts" enabled="true">
<artifact name="SuShe:war exploded" />
</option>
</method>
</configuration>
</component>
来源:https://blog.csdn.net/weixin_43330884/article/details/103416474


猜你喜欢
- 1.我做的是一个动态表格,就是在输入框里每输入一次数据并点击“添加”按钮,表格中就会新增一行记录。<table id="st
- 多层嵌套JSON类型数据解析简单来说:“key”:“value&rdqu
- 本文主要介绍了Maven实战之搭建Maven * 和镜像的方法(图文),分享给大家,具体如下:准备工作安装3.6.*的Nexus理论Nexus
- TCP/IP、UDP、Socket对TCP/IP、UDP、Socket编程这些词你不会很陌生吧?随着网络技术的发展,这些词充斥着我们的耳朵。
- 1.JavaBean转Map1.1.简介这篇博客是通过反射来进行实现转换的在学习redis中,发现了一个知识点,就是Java对象转map,视
- 一、为什么要有泛型?我们在写一些方法时可能会方法名相同,参数类型不同的方法,这种叫做重载。如果只是因为参数类型不同里面做的业务逻辑都是相同的
- 为什么使用logback记得前几年工作的时候,公司使用的日志框架还是log4j,大约从16年中到现在,不管是我参与的别人已经搭建好的项目还是
- 拖延症最可怕的地方就是:就算自己这边没有拖延,但对方也会拖延,进而导致自己这边也开始拖延起来!现在这个项目我这边已经是完工了,但是对方迟迟没
- Android动画之小球拟合动画实例实现效果:动画组成:1.通过三阶贝塞尔曲线来拟合圆,拟合系数的由来,以及怎么选控制点.2.利用画布can
- 导入maven项目各个注解均报错所遇问题导入maven项目各个注解均报错了思考1:这个项目使用了springboot;spring是个”大容
- 1. Easy Rules 概述Easy Rules是一个Java规则引擎,灵感来自一篇名为《Should I use a Rules En
- 前言Java多线程实现方式主要有四种:① 继承Thread类、实现Runnable接口② 实现Callable接口通过FutureTask包
- Android多媒体 MediaPlayer我们可以通过这个API来播放音频和视频该类是Androd多媒体框架中的一个重要组件,通过该类,我
- 这篇文章主要介绍了springboot配置aop切面日志打印过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习
- 一:模式说明模式定义:使多个对象都有机会处理请求,从而避免了请求的发送者和接受者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求
- 本文使用的Unicode+DLL+Debug的方式,因为不想最后生成的exe文件太大。环境搭建步骤如下:1、下载wxWidgets包:登录w
- 与任何程序设计语言一样,Java使用条件语句和循环结构确定控制流。本文将简单讲解条件、循环和switch。一、块作用域块(block),即复
- 要求: * 对用户输入的每个字符的值进行加密,将解密后的字符串输出 * 对用户输入的已加密字符串进行解密并
- 前言Date 类Date 类表示系统特定的时间戳,可以精确到毫秒。Date 对象表示时间的默认顺序是星期、月、日、小时、分、秒、年。构造方法
- 文件资源操作Spring 定义了一个 org.springframework.core.io.Resource 接口,Resource 接口