В моей доменной модели у меня есть следующие классы. У UserProfile есть один SecurityPrincipal
class SecurityPrincipal{
private String loginId;
private String password;
private Date registeredData;
private int status;
}
class UserProfile {
private String name;
private String company;
private SecurityPrincipa principal
}
Я хочу получить отсортированные результаты объектов 'UserProfile', и он отлично работает для простых свойств. Как
DetachedCriteria criteria=DetachedCriteria.forClass(UserProfile.class);
criteria.addOrder(Order.asc("name");
Но когда я пытаюсь получить доступ к свойствам внутреннего компонента (экземпляр SecurityPrincipal), например
criteria.addOrder(Order.asc("principal.status");
Hibernate выдает ошибку:
вызвано:
org.hibernate.QueryException: мог
не разрешать свойство:
securityPrincipal.status из:
com.bigg.ibmd.usermanagement.model.UserProfile
в
org.hibernate.persister.entity.AbstractPropertyMapping.propertyException (AbstractPropertyMapping.java:44)
в
org.hibernate.persister.entity.AbstractPropertyMapping.toColumns (AbstractPropertyMapping.java:59)
в
org.hibernate.persister.entity.BasicEntityPropertyMapping.toColumns (BasicEntityPropertyMapping.java:31)
Как мне отсортировать результаты по свойствам собственности?
Спасибо