HTTP Status 500 - 中java.lang.NullPointerException错误,请大家帮忙解决,非常感谢!

来源:百度知道 编辑:UC知道 时间:2024/06/30 18:42:59
程序为
<%@page contentType="text/html; charset=GB18030"%>
<%@page import="javainfo.*"%>
<%@page import="java.sql.*"%>
<jsp:useBean id="bean1" scope="session" class="javainfo.User"/>
<jsp:setProperty name="bean1" property="*"/>
<%Connection conn=null;
//String userNameSelection = request.getParameter("loginSelection");
//String userID=request.getParameter("userID");
//String password=request.getParameter("password");
try{
if((bean1.getLoginSelection()).equalsIgnoreCase("Teacher"))
{
conn=DBConnection.getConnection();
PreparedStatement pStat=conn.prepareStatement("select name,Password from Manager where ID=? and Password=?");
pStat.setString(1,bean1.getUserID());
pStat.setString(2,bean1.getPassword());
ResultSet rs=pStat.executeQuery();
if(

root cause java.lang.NullPointerException

switch_jsp.java:68
这行有空指针异常
估计是这里bean1.getLoginSelection(只是估计)
就是说你没有得到你想要的值,而是得到了null.如果想检查的话,可以一步一步用打印语句向下打印来检查是哪句.

这句话好象是有问题的吧,prepareStatement()方法是要传sql语句的吗?反正肯定是pStat这个为空了,你打印一下就知道了

代码不规范,不好分析.

空指针异常,一定是拿null的值去做了别的处理了!
if((bean1.getLoginSelection()).equalsIgnoreCase("Teacher"))
这一句还有下面和Student比较的那一句,如果bean1.getLoginSelection()为null时,使用equalsIgnoreCase(String)方法都会报NullPointerException错!

switch.jsp中报的空指针的错误。
建议用out.println();打印语句来调试,看程序到哪里出错。
另外,try..catch(Exception e) finally{语句中缺少了catch...

只贴出来jsp是看不出来的,如果你把jsp编译以后的switch_jsp.java文件贴出来就能看出来了。一般NullPointer都是对一个null操作引发的。就像[忧伤成河]说的bean1.getLoginSelection这种句子,如果bean1==null,那么这句话就会抛出NullPointerException。