java.lang.RuntimeException: java.lang.NullPointerException
具体信息如下:
HTTP Status 500 – Internal Server Error
Type Exception Report
Message Servlet执行抛出一个异常
Description The server encountered an unexpected condition that prevented it from fulfilling the request.
Exception
jakarta.servlet.ServletException: Servlet执行抛出一个异常
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
Root Cause
java.lang.ExceptionInInitializerError
org.example.dao.BaseDao.queryBaseDao(BaseDao.java:46)
org.example.dao.UserDao.login(UserDao.java:19)
org.example.service.serviceImpl.UserServiceImpl.login(UserServiceImpl.java:24)
org.example.MyLoginServlet.doPost(MyLoginServlet.java:28)
jakarta.servlet.http.HttpServlet.service(HttpServlet.java:709)
jakarta.servlet.http.HttpServlet.service(HttpServlet.java:792)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
Root Cause
java.lang.RuntimeException: java.lang.NullPointerException
org.example.util.JDBCUtils.<clinit>(JDBCUtils.java:34)
org.example.dao.BaseDao.queryBaseDao(BaseDao.java:46)
org.example.dao.UserDao.login(UserDao.java:19)
org.example.service.serviceImpl.UserServiceImpl.login(UserServiceImpl.java:24)
org.example.MyLoginServlet.doPost(MyLoginServlet.java:28)
jakarta.servlet.http.HttpServlet.service(HttpServlet.java:709)
jakarta.servlet.http.HttpServlet.service(HttpServlet.java:792)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
Root Cause
java.lang.NullPointerException
java.util.Properties$LineReader.readLine(Properties.java:434)
java.util.Properties.load0(Properties.java:353)
java.util.Properties.load(Properties.java:341)
org.example.util.JDBCUtils.<clinit>(JDBCUtils.java:25)
org.example.dao.BaseDao.queryBaseDao(BaseDao.java:46)
org.example.dao.UserDao.login(UserDao.java:19)
org.example.service.serviceImpl.UserServiceImpl.login(UserServiceImpl.java:24)
org.example.MyLoginServlet.doPost(MyLoginServlet.java:28)
jakarta.servlet.http.HttpServlet.service(HttpServlet.java:709)
jakarta.servlet.http.HttpServlet.service(HttpServlet.java:792)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
Note The full stack trace of the root cause is available in the server logs.
Apache Tomcat/10.0.27
通过debug发现如下:
java.lang.RuntimeException: java.lang.NullPointerException
org.example.util.JDBCUtils
//加载配置文件,发现加载为null
InputStream is =JDBCUtils.class.getClassLoader().getResourceAsStream("druid.properties");
properties.load(is);
分析原因为:配置文件未被加载到
解决措施
情况一:查看存放properties
文件的目录是否是源目录(source root),不是的话添加进去即可
情况二:未放入到编译后的文件,在target->classes下查看是否有properties
文件,没有的话将配置文件复制进去,再重新编译运行