2020年12月15日Java学习日记

404问题

其实这个问题很简单。根本原因就是服务器找不到目标页面(或者说成找不到目web资源)而产生的。既然找不到资源,那么很大原因就是访问路径或者XML的配置的出了问题。解决办法我们就从这里入手。

第一个方法:检查表单的action属性中路径是否正确,是否有因为粗心而打错的字。

第二个方法:a标签中路径是否正确。

需要注意的是表单或a标签中的路径有时候应该加上你的basePath。

第三个方法:.XML是否配置正确

当然,既然有了错误,控制台一般也会报错。我们也要结合控制台给我们提供的报错信息进行针对性Debug.
比如:控制台有
ContainerBase.addChild: start:

org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/Reg_log]]

Error deploying configuration descriptor E:java.metadata.pluginsorg.eclipse.wst.server.core mp0confCatalinalocalhostReg_log.xml

java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/Reg_log]]

很可能就是你已经选择了servlet的在XML中自动配置。而你又在XML配置了一遍,于是就会报错。

我们在编写Servlet的时候是选择创建Servlet文件如图:

所以创建后Servlet文件中会产生着样的一串代码:@WebServlet("/InitServlet")具体如下图:

这说明在XML文件中就不用再配置对应的Servlet文件了。可我们在XML中还是写了,所以就产生了上面控制台中的报错。更改之前的XML文件如图:
在这里插入图片描述

当我们把和两个标签删除之后就,程序就可以正常运行了

原文地址:https://www.cnblogs.com/9635741zly/p/14176495.html