Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 列表NullPointerException休眠_Java_Hibernate_Nullpointerexception - Fatal编程技术网

Java 列表NullPointerException休眠

Java 列表NullPointerException休眠,java,hibernate,nullpointerexception,Java,Hibernate,Nullpointerexception,我的hibernate项目出错。当计算listnull的大小时,它会给我一个NullPointerException,因为它在执行查询时中断,并且没有设置我传递的两个参数,而我只使用一个参数就可以完美地工作。 提前感谢!救命啊!啊哈 我将向你展示: 警报架 public List getAlertsList(int level, String Process) { List<Dtalerts> list = null; try {

我的hibernate项目出错。当计算listnull的大小时,它会给我一个NullPointerException,因为它在执行查询时中断,并且没有设置我传递的两个参数,而我只使用一个参数就可以完美地工作。 提前感谢!救命啊!啊哈 我将向你展示:

警报架

public List getAlertsList(int level, String Process) 
{
    List<Dtalerts> list = null;
    try 
    {
            if(!this.session.isOpen()){
                this.iniciarConexion();
            }
        Query q = session.createQuery("from Dtalerts as dtalerts where  dtalerts.level = :level AND dtalerts.Process = :Process");
        //q.setParameter("Fh_alert", Fh_alert);
        q.setParameter("level", level);
        q.setParameter("Process", Process);
        list = (List<Dtalerts>) q.list();
    } catch (Exception ex) 
    {
        System.out.println("Excepcion " + ex);
        ex.printStackTrace();
    }
    return list;
}
Jsp


首先,在代码中防止NPE。通过使用空列表初始化列表,应避免从getAlertsList返回空列表:

List<Dtalerts> list = new ArrayList<>();
并在列表中填入如下结果:

list.addAll((List<Dtalerts>) q.list())
或者在运行循环之前对JSP文件中的返回值进行空检查

其余部分是关于更正您的查询。
如果您无法解决查询,请发布您得到的异常。

使用其他查询参数名称,则Process可能是Process或Process1,因为您已经有一个名为ProcessPerfect的类!非常感谢。
list.addAll((List<Dtalerts>) q.list())