读书人

求解空指针错误?

发布时间: 2012-07-15 20:11:35 作者: rapoo

求解空指针异常??
package org.apache.jsp;

import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
import java.sql.ResultSet;
import user.user_operation;
import java.sql.SQLException;

public final class checkLogin_jsp extends org.apache.jasper.runtime.HttpJspBase
implements org.apache.jasper.runtime.JspSourceDependent {

private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory();

private static java.util.List _jspx_dependants;

private javax.el.ExpressionFactory _el_expressionfactory;
private org.apache.AnnotationProcessor _jsp_annotationprocessor;

public Object getDependants() {
return _jspx_dependants;
}

public void _jspInit() {
_el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory();
_jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName());
}

public void _jspDestroy() {
}

public void _jspService(HttpServletRequest request, HttpServletResponse response)
throws java.io.IOException, ServletException {

PageContext pageContext = null;
HttpSession session = null;
ServletContext application = null;
ServletConfig config = null;
JspWriter out = null;
Object page = this;
JspWriter _jspx_out = null;
PageContext _jspx_page_context = null;


try {
response.setContentType("text/html;charset=GB2312");
pageContext = _jspxFactory.getPageContext(this, request, response,
null, true, 8192, true);
_jspx_page_context = pageContext;
application = pageContext.getServletContext();
config = pageContext.getServletConfig();
session = pageContext.getSession();
out = pageContext.getOut();
_jspx_out = out;

out.write("\r\n");
out.write("\r\n");
//-------接收输入参数------------
int sysuser_role=0;
ResultSet rs=null;
try{
sysuser_role=Integer.parseInt(request.getParameter("sysuser_role"));
}catch(Exception e){}
String sysuser_password=request.getParameter("sysuser_password");
String sysuser_name=request.getParameter("sysuser_name");
String certCode=request.getParameter("certCode");
//------查询数据库------
user_operation uop=new user_operation();
rs=uop.getUserOne(sysuser_name,sysuser_password,sysuser_role);
int rowCount=0;
try{
rs.next();
rowCount=1;
}catch(SQLException e){}if(rowCount!=0&&certCode.equals((String)session.getAttribute("certCode"))){
//------通过检查------
session.setAttribute("sysuser_id",rs.getString("sysuser_id"));
response.sendRedirect("./index.jsp");
}else{
response.sendRedirect("./login.jsp");
}

out.write('\r');
out.write('\n');
} catch (Throwable t) {
if (!(t instanceof SkipPageException)){
out = _jspx_out;
if (out != null && out.getBufferSize() != 0)
try { out.clearBuffer(); } catch (java.io.IOException e) {}
if (_jspx_page_context != null) _jspx_page_context.handlePageException(t);
}
} finally {
_jspxFactory.releasePageContext(_jspx_page_context);
}


}
}


红的字体中出现空指针异常,麻烦各位大哥大姐看一下,如何解决???谢谢了!!

[解决办法]
把你这个类贴出来: user_operation

从你的代码来看,user_operation.getUserOne()返回的rs有问题
[解决办法]
这种问题你自己断点就能看出来的,jsp你加打印语句调下
[解决办法]
rs.next();
rowCount=1;
改成这个

if(rs.next()) rowCount=1;

读书人网 >J2SE开发

热点推荐