之前笔误我将hql语句“from Book b where b.catalogid=?”写成了“from org.apex.bookstore.vo.Book b where b.catalog.catalogid=?”,即多了一个catalog,可我已经改正了啊,为什么还报一样的错?(我已经试了重启服务器了报错原文为:Servlet.service() for servlet [default] in context with path [/bookstore] threw exception [org.hibernate.QueryException: could not resolve property: catalog of: org.apex.bookstore.vo.Book [from org.apex.bookstore.vo.Book b where b.catalog.catalogid=?]] with root cause
org.hibernate.QueryException: could not resolve property: catalog of: org.apex.bookstore.vo.Book [from org.apex.bookstore.vo.Book b where b.catalog.catalogid=?]

解决方案 »

  1.   

    1.检查你的hibernate config配置文件;2、检查你数据库中对应表的catalogId字段拼写是否正确.
      

  2.   

    都OK啊,关键是怎么会报这样的错(错误的意思明显是我多加了一个catalog,可我已经改过了啊,怎么会还是一样的错)
      

  3.   

    1:楼主的包含查询方法的类,是通过jar包的形式部署在服务器上的吗?---》重新编译一下jar包覆盖到服务器相应位置
    2:或者楼主是通过myeclipse部署上去的吗?如果不是要手动的覆盖相应的文件