diff --git a/src/main/java/org/springframework/data/ldap/repository/query/LdapQueryCreator.java b/src/main/java/org/springframework/data/ldap/repository/query/LdapQueryCreator.java index 6dcb3bf3..7bcf2b35 100644 --- a/src/main/java/org/springframework/data/ldap/repository/query/LdapQueryCreator.java +++ b/src/main/java/org/springframework/data/ldap/repository/query/LdapQueryCreator.java @@ -39,6 +39,7 @@ * * @author Mattias Hellborg Arthursson * @author Mark Paluch + * @author Xiangcheng Kuo */ class LdapQueryCreator extends AbstractQueryCreator { @@ -80,7 +81,7 @@ protected ContainerCriteria create(Part part, Iterator iterator) { } if (!inputProperties.isEmpty()) { - query.attributes(inputProperties.toArray(new String[0])); + query.attributes(inputProperties.stream().map(prop -> mapper.attributeFor(entityType, prop)).toList().toArray(new String[0])); } ConditionCriteria criteria = query.where(getAttribute(part)); diff --git a/src/test/java/org/springframework/data/ldap/repository/LdapRepositoryUnitTests.java b/src/test/java/org/springframework/data/ldap/repository/LdapRepositoryUnitTests.java index ea931264..e1f7b8f6 100644 --- a/src/test/java/org/springframework/data/ldap/repository/LdapRepositoryUnitTests.java +++ b/src/test/java/org/springframework/data/ldap/repository/LdapRepositoryUnitTests.java @@ -78,7 +78,7 @@ void shouldReturnInterfaceProjection() { verify(ldapOperations).findOne(captor.capture(), any()); LdapQuery query = captor.getValue(); - assertThat(query.attributes()).containsOnly("lastName"); + assertThat(query.attributes()).containsOnly("sn"); } @Test @@ -96,7 +96,7 @@ void shouldReturnDynamicDtoProjection() { verify(ldapOperations).findOne(captor.capture(), any()); LdapQuery query = captor.getValue(); - assertThat(query.attributes()).contains("lastName"); + assertThat(query.attributes()).contains("sn"); } @Test @@ -115,7 +115,7 @@ void shouldReturnInterfaceProjectionAsStream() { verify(ldapOperations).find(captor.capture(), any()); LdapQuery query = captor.getValue(); - assertThat(query.attributes()).containsOnly("lastName"); + assertThat(query.attributes()).containsOnly("sn"); } interface PersonRepository extends LdapRepository {