diff --git a/src/main/java/org/springframework/data/jpa/repository/query/JpaQueryCreator.java b/src/main/java/org/springframework/data/jpa/repository/query/JpaQueryCreator.java index 877798a54..9b0bc5dc5 100644 --- a/src/main/java/org/springframework/data/jpa/repository/query/JpaQueryCreator.java +++ b/src/main/java/org/springframework/data/jpa/repository/query/JpaQueryCreator.java @@ -215,7 +215,7 @@ public class JpaQueryCreator extends AbstractQueryCreator, case CONTAINING: case NOT_CONTAINING: - if (property.isCollection()) { + if (property.getLeafProperty().isCollection()) { Expression> propertyExpression = traversePath(root, property); Expression parameterExpression = provider.next(part).getExpression(); diff --git a/src/test/java/org/springframework/data/jpa/repository/sample/UserRepository.java b/src/test/java/org/springframework/data/jpa/repository/sample/UserRepository.java index c69dd61a1..7df6fcf83 100644 --- a/src/test/java/org/springframework/data/jpa/repository/sample/UserRepository.java +++ b/src/test/java/org/springframework/data/jpa/repository/sample/UserRepository.java @@ -591,4 +591,9 @@ public interface UserRepository extends JpaRepository, JpaSpecifi * DATAJPA-829 */ List findByRolesNotContaining(Role role); + + /** + * @see DATAJPA-858 + */ + List findByRolesNameContaining(String name); }