at net.xbulletin.gbook.XGBConst.getInfo(XGBConst.java:17)只有这一个类是我自己的
但是我实在是没有发现什么错误,下面是源代码:
-----------------java---------
package net.xbulletin.gbook;
import net.xbulletin.gbook.DBConnect;
import java.sql.*;public class XGBConst
{
public XGBConst()
{
}
public String[] getInfo()
{
String[] info = new String[2];
try
{
DBConnect dbc = new DBConnect("select gbookName,homePage from config");
java.sql.ResultSet rs=dbc.executeQuery();
while(rs.next())
{
info[0]=rs.getString(1);
info[1]=rs.getString(2);
rs.close();
dbc.close();
}
}catch(Exception e)
{
e.printStackTrace();
}
return(info);
}
}
-----调用的jSP源代码--------------
<%
String homeURL,gbookName;
XGBConst tempConst = new XGBConst();
String[] tempInfo=tempConst.getInfo();
gbookName=tempInfo[0];
homeURL=tempInfo[1];
%>

解决方案 »

  1.   

    "java.lang.NullPointerException"这是空指针异常。
    请检查你的程序是否有使用但没有初始化的变量/对象。
      

  2.   

    while(rs.next()) {
        info[0]=rs.getString(1);
        info[1]=rs.getString(2);
        rs.close();
        ~~~~~~~~~~~~这里很明显的错了,你把rs给close掉了,但是在下一个循环while(rs.next())里面会读rs.next的
        dbc.close();
    }
    改成
    while(rs.next()) {
        info[0]=rs.getString(1);
        info[1]=rs.getString(2);
    }
    rs.close();
    dbc.close();其实你看exception很容易看出来
    java.lang.NullPointerException
            at com.codestudio.sql.PoolManResultSet.clearUpdates(PoolManResultSet.jav
    a:1723)
            at com.codestudio.sql.PoolManResultSet.next(PoolManResultSet.java:1025)
                                  ~~~~~~~~~~~~~~~~~~~~~~
    就知道在ResultSet.next的时候错了,然后跟过去看代码行了
      

  3.   

    happyegg(快乐蛋) ( ) 信誉:100 你好,首先谢谢你的帮助,问题已经解决了,我不知道你是不是我QQ的好友,如果不是,希望你加我:QQ:8957917其实你说得问题我自己注意过,但是由于自己的粗心大意,竟然让这么一个小小的程序困扰了很久,我当时是这么想的:自己的DBConnect dbc = new DBConnect("select gbookName,homePage from config");其中gbookname,homepage字段都是只有一条记录,所以以为你说的那些无关紧要,就没有怎么管他,现在想想自己真是胡涂!!
    送你80分,毕竟还有其它两位朋友关心过这个帖子
    谢谢你
    good luck