Hibernate @OrderBy with referenced class
annotations, hibernate, oracle
Solution
It's unfortunately impossible to do what you want. I've answered a similar question here.
`@OrderBy` only supports direct properties of the collection elements.
Problem
I have a class say: "ClassA" which has a collection of "ClassB" ``` @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY) @JoinColumn(name = "COLUMN_NAME") private List<ClassB> lotsOfClasses; ``` "ClassB" has a mapped class "ClassC" using plain old mapping annotations: ``` public class ClassB { ... @ManyToOne @JoinColumn(name="AD_POINT_ID") private ClassC classC; ... } ``` How do I add an @OrderBy annotation to ClassA's collection to ClassB, so that the collection is ordered by the "name" property of ClassC Like so: ``` @OrderBy(clause="classC.name asc") ``` All I get are Oracle exceptions saying that classC is unknown. Any help here would be awesome, as its really bugging me at the moment. P.S. I should also mention that using the OrderBy annotation on the collection like this: @OrderBy(clause="classC asc") (i.e. without the .name on classC) I get a valid SQL statement, which uses the ID column (the primary key) of classC to order by. Cheers, Mark