日期:2014-05-18  浏览次数:20721 次

为什么一执行就会报错呢
执行这个都会有错,
        public   boolean   hasUser(JspUserinfo   user)
        {
                boolean   flag   =   false;
                Query   query   =   session.createQuery( "from   JspUserinfo   ");
                if   (query.list().size()   !=   0)
                {
                        flag   =   true;
                }
                return   flag;
        }
是什么问题?
错误信息.
java.lang.NullPointerException
at   com.cc.hibernate.ActionJspUserinfo.hasUser(ActionJspUserinfo.java:200)
at   com.logon.app.LogonAction.execute(LogonAction.java:46)



------解决方案--------------------
应该是query.list()返回的List是NULL
你查看一下
------解决方案--------------------
也可能是session没有获得。
------解决方案--------------------
//这句 if (query.list().size() != 0)

可以先拆分调试下 看query是null 还是query.list()是null
------解决方案--------------------
回复人:rjzou2006(一个小泡) ( 一级(初级)) 信誉:100 2007-9-19 9:57:45 得分:0
?

Query query = session.createQuery( "from JspUserinfo ");
我是想问一下,在执行这句的时候,是否一定要给JspUserinfo主键赋值呢?


应该是不用的
------解决方案--------------------
改成:

List list = query.list();
if(list != null) {
if(list.size() > 0) {
flag = true;
}
}
return flag;