I'm trying to use the Criterion class from ch23 and the compiler is complaining about a few statements like this:
return b.lessThan(r.<Comparable> get(c.getPropertyName()), getComparable(c));
with the error:
"The method lessThan(Expression<? extends Y>, Expression<? extends Y>) in the type CriteriaBuilder is not applicable for the arguments (Path<Comparable>, Comparable<capture#4-of ?>)".
It looks like the getComparable(Criterion c) method is not valid with latest JPA API (I'm using 2.1:1.0.0.Final), but I'm not certain yet - still investigating.