WEB开发疑难杂症:HTTP Status 500 - Error instantiating servlet class 解决

杀马特。学长 韩版系。学妹 提交于 2020-02-24 13:31:45

问题描述:

web项目中请求出现错误,如下: 
HTTP Status 500 - Error instantiating servlet class XXXX类 
type Exception report 
message Error instantiating servlet class test.Test 
description The server encountered an internal error that prevented it from fulfilling this request. 
exception  
javax.servlet.ServletException: Error instantiating servlet class

root cause 
java.lang.ClassNotFoundException:XXXX类

再次刷新 则出现404错误
此博主列出几种原因如下:

出现原因&解决方法:

 

  • web.xml中< servlet-class >路径配置错误,检查servlet类是否在该路径下,注意要包含package名
  • web-inf/classes目录下没有XXXX.class文件,应该编译把classes作为输出目录
  • servlet类同时在web.xml中配置并加上了@webservlet的注解,去掉其中之一即可
  • tomcat并没有成功部署项目,检查servlet是否初始化,即在init方法里输出日志或断点,看是否进入

补充:

博主在如上第四步为创建class类实现servlet接口并非直接创建servlet

例如此种方式:

在init()方法中输出日志看servlet容器是否被初始化;

若为输出日志,则说明servlet容器未被初始化

尝试如下解决

将自动构建勾选解决:

 

 

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!