diff --git a/src/main/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilder.java b/src/main/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilder.java index bd230fab1..59f1fb4bb 100644 --- a/src/main/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilder.java +++ b/src/main/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilder.java @@ -226,6 +226,6 @@ public class QuerydslPredicateBuilder { * @return */ private static boolean isSingleElementCollectionWithoutText(List source) { - return source.size() == 1 && !StringUtils.hasText(source.get(0)); + return source.size() == 1 && !StringUtils.hasLength(source.get(0)); } } diff --git a/src/test/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilderUnitTests.java b/src/test/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilderUnitTests.java index 48ad47fc4..75cabe342 100644 --- a/src/test/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilderUnitTests.java +++ b/src/test/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilderUnitTests.java @@ -218,4 +218,21 @@ public class QuerydslPredicateBuilderUnitTests { assertThat(predicate, is((Predicate) $.user.as(QSpecialUser.class).specialProperty.contains("VALUE"))); } + + @Test // DATACMNS-1443 + public void doesNotDropValuesContainingABlank() { + + values.add("firstname", " "); + + assertThat(builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS), // + is((Predicate) QUser.user.firstname.eq(" "))); + } + + @Test // DATACMNS-1443 + public void dropsValuesContainingAnEmptyString() { + + values.add("firstname", ""); + + assertThat(builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS), is(nullValue())); + } }