【问题标题】:Why this simple hql query doesn't work? uncategorized SQLException为什么这个简单的 hql 查询不起作用?未分类的 SQLException
【发布时间】:2014-04-28 13:25:22
【问题描述】:

我有两个表:Research 和 userResearch,Research 使用 @OneToMany 将 userResearches 列表映射到 userResearch。我正在尝试执行一个简单的 hql 查询

from Research r inner join r.userResearches ur where ur.user=:user

并得到这个异常:

Hibernate operation: could not execute query; uncategorized SQLException for SQL [select...]; SQL state [24000]; error code [0]; Operation requires a scrollable ResultSet, but this ResultSet is FORWARD_ONLY.; nested exception is org.postgresql.util.PSQLException: Operation requires a scrollable ResultSet, but this ResultSet is FORWARD_ONLY.

可能是什么原因? 实体映射正确,一切正常,我可以使用标准 API 检索两个实体。

@Entity
public class UserResearch extends ManagedEntity {

    @ManyToOne
    @JoinColumn(name = "research_id")
    private Research research;

@Entity
public class Research extends ManagedEntity {

    @OneToMany(mappedBy = "research")
    private Set<UserResearch> userResearches = new HashSet<UserResearch>(0);

【问题讨论】:

  • 您是否尝试过使用不同的 Collection 接口,例如 List?问题可能不在于查询本身,因为它看起来很合理,但我无法解决。

标签: hibernate postgresql hql


【解决方案1】:

好吧,我不知道具体原因,但我使用 getSession().createQuery() 重写了一个查询,它开始工作,在我使用我们的 GenericDao 之前它使用 getHibernateTemplate。

【讨论】:

  • 啊,那可能是一个泄漏的抽象:)
猜你喜欢
  • 1970-01-01
  • 2010-12-08
  • 1970-01-01
  • 1970-01-01
  • 2011-10-25
  • 2012-06-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多