class X {
Y y; // manyToOne
}
class Y {
Long id;
}
@NamedQuery(name = "someName", query = "from X where y.id in :ids")
我有公共,表,实体和在实体上所有其他的事情,但我没有写在这里他们。
TypedQuery<X> query = getEntityManager().createNamedQuery("someName", X.class);
query.setParameter("ids", someListOfLongs); // HERE I GET THE ERROR
queryFinal.getResultList();
Parameter value [[Ljava.lang.Object;@90d0bf] was not matching type [java.lang.Long]
我试过带或不带(),我改变了Hibernate的核心的版本3.6.4(来自JBoss的6.0.0.Final),否则,如果我写in :ids
没有()我有一个错误。
请帮忙。
The IN always worked, the problem was that List<Long> wasn't actually List<Long> was List<Object[]>. Thanks
它不是对象[],它是列表。我不会在我的主要实体上的一个属性上进行操作,但是对于许多实体的实体,不知道它是否重要。 –
2011-06-15 19:55:50
我认为我的问题是因为列表得到一个列表
IN始终工作,问题是列表不是实际列表是列表