网页中的错误提示
The server encountered an internal error that prevented it from fulfilling this request.
exception
java.lang.NullPointerException
action.LoginAction.execute(LoginAction.java:38)
action类
public String execute() throws Exception{
List<Users> list = new ArrayList<Users>();
Session  session= HibernateSessionFactory.getSession();
Transaction tx = session.beginTransaction();
String hql = "from Users where username=?";
System.out.println(username);
Query query = null;
try{
query = session.createQuery(hql);
query.setString(0,username);
}catch(Exception e){
tx.rollback();
e.printStackTrace();
}finally{
list = query.list();
tx.commit();
}
return SUCCESS;
}
编写测试类,发现单独执行action类中的方法是可以的。而且如果hql语句中没有参数,即hql="from Users"
也可以执行,到达其他页面。username中的值可以得到(可以在后台输出),但加上参数后,就无法正常运行了。用Debug检查,执行语句query = session.createQuery(hql);时,页面就报错了。StrutsHibernate异常

解决方案 »

  1.   

    由struts2框架直接传值
    第38行list = query.list();
      

  2.   

    返回值 应该是一个对象不  怎么写list
      

  3.   

    问题算是解决了吧,用SQL语句就可以正常运行了,不知道为什么用HQL语句不行。
    有知道的请说明一下,不胜感激!
      

  4.   

    问题算是解决了吧,用SQL语句就可以正常运行了,不知道为什么用HQL语句不行。
    有知道的请说明一下,不胜感激!
      

  5.   

    问题算是解决了吧,用SQL语句就可以正常运行了,不知道为什么用HQL语句不行。
    有知道的请说明一下,不胜感激!