The spec implies this should be supported generally speaking if you look at javax.persistence.criteria.CriteriaBuilder.In. However, IMO it does not explicitly require this for these Path/Expression forms so that leaves us wiggle room in terms of how we interpret those. What you mention Guillaume Smet is a valid concern provided we iterate the list in a way we would not otherwise... which I am not sure is the case. The criteria object is transformed into a Query by walking it, and each node is asked to handle itself - including, e.g., individual elements within the IN predicate |