0
У меня есть таблица, которая может представлять дерево.Hibernate Query on self join table failed
key number(10) NOT NULL,
parentkey number(10) NOT NULL,
name varchar(20),
И класс, представляющий его.
@Entity
@Table(name = "example")
public class Example
{
@Id
@Column(name = "KEY")
private long key;
@Column(name = "NAME")
private String name;
@ManyToOne
@JoinColumn(name="parentkey",referencedColumnName="key")
private Example parent;
public Example()
{
parent = this;
}
При попытке запроса на экземпляре и его родителей я получаю
org.hibernate.QueryException: не удалось разрешить свойство: parent.name из: com.example
Вот как я построить запрос критерии:
Example dsd = ...;
...
Criteria crit = session.createCriteria(Example.class);
crit.add(Restrictions.eq("name", dsd.getName()));
crit.add(Restrictions.eq("parent.name", dsd.getParent().getName()));
return crit.list();
Я мог бы сделать это в сыром SQL, но я чюо uld скорее не. Что я делаю не так?