servlet程序HTTP Status 500

一、项目存放路径问题(最常见)

在安装Tomcat时,运行程序都正常,但却打不开http://localhost:8080/,在Tomcat目录webapps下也找不到自己做的项目,这时因为你做的项目没有部署到webapps目录下,倒霉的时候就会遇到报错HTTP Status 500 - Error instantiating servlet class,会怀疑和web.xml文件有关,但是web.xml是正确的,这时候解决办法就是重新部署你的项目到webapps目录下
1.关闭Tomcat服务器,找到servers窗口,如下图(如果找不到,到window—>show View–>Other中搜索servers打开即可显示下图),右击服务器操作见下图
这里写图片描述

2.双击服务器,进入下图
这里写图片描述

3.清除服务器缓存
这里写图片描述

4.修改路径
这里写图片描述


二、在eclipase 中编译 servlet 但是一致报 HTTP Status 500 - Error instantiating servlet class XXX类 的问题

解决方法
1. 在web.xml 中检测 有没有配置错误
2. 查看 项目的buildclasses 下有没有 你的XXX.class 文件,或 tomcat的webapps 下 有没哟编译好的 XXX.class文件
3. servlet类同时在web.xml中配置并加上了@webservlet的注解,去掉其中之一即可
4. tomcat并没有成功部署项目,检查servlet是否初始化,即在init方法里输出日志或断点,看是否进入
5. 查看eclipse工具中的:Project->Build Automatically这个选项,是否勾选,如果没有勾选,选上的话,eclipse可以自动编译,编译后就会有class了,见下图
这里写图片描述

原文地址:https://www.cnblogs.com/wangqilong/p/9417550.html