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
0
投稿
猜你喜欢
- 目录1.堆空间的基本结构:2.空间分配担保机制3.如何判断一个对象已经无效4 不可达的对象并非“非死不可”5 如何判断一个常量是废弃常量?6
- 场景需要判断,首字母是否是英文字母。有人说,那还不简单么,StringUtils.isAlpha() 就可以搞定。 笔者也是这么想的,结果却
- 1、安装依赖<dependency> <
- 前言项目使用redis作为缓存数据,但面临着问题,比如,项目A,项目B都用到redis,而且用的redis都是一套集群,这样会带来一些问题。
- 需要用到 java 写一个 ftp 的工具,因为只有一点点 java 基础,但是由于好几年不用,几乎算是不会了,只好一点点来搞,还好能捡起来
- 如何实现封装可以分为两步:第一步:将类的变量声明为private。第二步:提供公共set和get方法来修改和获取变量的值。代码展示publi
- BitArray的基础可以看菜鸟编程BitArray 类管理一个紧凑型的位值数组,它使用布尔值来表示,其中 true 表示位是开启的(1),
- 1、获取视频缩略图有两个方法(1)通过内容提供器来获取(2)人为创建缩略图(1)缺点就是必须更新媒体库才能看到最新的视频的缩略图[java]
- 背景今天学习Springboot,但是用的apache-maven 3.0 ,导入springboot1.5.19 ,Maven项目老是爆红
- 在Android Studio中对一个自己库进行生成操作时将会同时生成*.jar与*.aar文件。分别存储位置: &n
- Spring对配置类的处理主要分为2个阶段配置类解析阶段会得到一批配置类的信息,和一些需要注册的beanbean注册阶段将配置类解析阶段得到
- android中提供了4中动画: AlphaAnimation 透明度动画效果 ScaleAnimation 缩放动画效果 Translat
- 一、概述xml整合第三方框架有两种整合方案:不需要自定义名空间,不需要使用Spring的配置文件配置第三方框架本身内容,例如:MyBatis
- 在前面的文章<Mybatis配置之<properties>属性配置元素详述>,我们讲述了<properties
- 一、什么是冒泡排序冒泡排序的英文是bubble sort,它是一种基础的交换排序。说到冒泡是不是就想起了快乐肥宅水呢?汽水中有许多小小的水泡
- java的jar是一个打包工具,用于将我们编译后的class文件打包起来,这里面主要是举一个例子用来说明这个工具的使用。在C盘下的temp文
- 我们还是用一个小例子来看看自定义View和自定义属性的使用,带大家来自己定义一个带进度的圆形进度条,我们还是先看一下效果吧从上面可以看出,我
- 字节流和字符流对于文件必然有读和写的操作,读和写就对应了输入和输出流,流又分成字节和字符流。1.从对文件的操作来讲,有读和写的操作——也就是
- 这是一次阿里面试里被问到的题目,在我的印象中,final修饰的方法是不能被子类重写的。如果在子类中重写final修饰的方法,在编译阶段就会提
- 1.雪崩效应 雪崩效应如上图所示,假设我们有3个微服务A,B,C,A调用B,B调用C,如果C挂掉了,由于B是同步调用,不断等待,导致资源耗尽