私は 2 つのエンティティを持っています: 1 対多の関係にある学部とコースです。つまり、学部は複数のコースを提供できますが、提供しないこともあります。
私は、学部が提供するコースの数で学部を並べ替えようとしています。
criteriaQuery.orderBy(criteriaBuilder.asc(criteriaBuilder.size(root.get(Faculty_.courses))));
問題は、それが失敗することです
criteriaBuilder.size(root.get(Faculty_.courses))
特定の学部では、Faculty_.courses が null であるため、NullPointerException が発生します。コースがnullの場合を考慮して、これをより良い方法で書くのを手伝ってください。
注:これはページネーションなどを含むより大きなクエリの一部であるため、JPA Criteria API を使用する必要があります。したがって、クエリ言語を使用して記述することはオプションではありません。