我是靠谱客的博主 碧蓝唇膏,最近开发中收集的这篇文章主要介绍学习javaweb遇到的一个异常HTTP状态 500 - 内部服务器错误,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

HTTP状态 500 - 内部服务器错误


类型 异常报告

消息 Servlet执行抛出一个异常

描述 服务器遇到一个意外的情况,阻止它完成请求。

例外情况

jakarta.servlet.ServletException: Servlet执行抛出一个异常
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)

根本原因。

java.lang.ExceptionInInitializerError
	servlets.AddServlet.doPost(AddServlet.java:35)
	jakarta.servlet.http.HttpServlet.service(HttpServlet.java:694)
	jakarta.servlet.http.HttpServlet.service(HttpServlet.java:777)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)

根本原因。

java.lang.NullPointerException: inStream parameter is null
	java.base/java.util.Objects.requireNonNull(Objects.java:233)
	java.base/java.util.Properties.load(Properties.java:407)
	utils.JDBCUtils.<clinit>(JDBCUtils.java:30)
	servlets.AddServlet.doPost(AddServlet.java:35)
	jakarta.servlet.http.HttpServlet.service(HttpServlet.java:694)
	jakarta.servlet.http.HttpServlet.service(HttpServlet.java:777)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)

):注意 主要问题的全部 stack 信息可以在 server logs 里查看

 

这个异常是我想要用页面form表单来填写tomcat服务器的数据库时出现的,当时学到这里,用了课程的代码,结果却没有成功。

看异常原因是 inStream parameter is null,也就是创建druid连接时,没有成功读取到druid.propreties配置文件。所以是创建Connection对象失败,想了一下,我学的JDBC课程和JAVAWEb课程的老师不一样,所以我赶紧看了一下web课程的JDBC怎么写的,果然,他是直接把相关配置写进类里面了,没有用properties读取。

所以我重新在类里面写了一个getConn方法,将各种配置直接写进类里面。

重新运行还是不行,依然提示同样的异常。

后面我仔细思考了一下,发现是自己将之前的getConnectionDruid方法声明为static的,所以我虽然只是用了getConn方法,没有涉及到输入流,但是由于静态方法是随着类的加载而加载,因此当我调用getConn方法时,就会加载类,从而运行静态方法,一样会出现异常。

后面将相关的静态方法删除即可。

最后

以上就是碧蓝唇膏为你收集整理的学习javaweb遇到的一个异常HTTP状态 500 - 内部服务器错误的全部内容,希望文章能够帮你解决学习javaweb遇到的一个异常HTTP状态 500 - 内部服务器错误所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部