Java FreeMarker Groovy HTML Python XSLT
Failed to load latest commit information.
buildSrc Add unboundid embedded ldap server Sep 30, 2016
core-tiger Move test to assertj (#401) Apr 15, 2016
core return the processed context (as it can be a proxy) Oct 6, 2017
etc LDAP-56: Server setup script for EC2 OpenLDAP server and keystore for… Nov 22, 2013
gradle Override mockito version for spring io Jan 9, 2017
ldif LdapEncoder Base64 newlines should start with " " Sep 30, 2016
lib Moved everything from mvn-build to trunk root. Oct 12, 2008
odm Polish Unbounded Support Sep 30, 2016
parent LDAP-251: Some additional tweaks to the gradle build Aug 16, 2013
samples Update pom.xml versions Mar 3, 2017
sandbox Move test to assertj (#401) Apr 15, 2016
src fixing usernmae typo to username Oct 6, 2017
test-support-unboundid Polish Unbounded Support Sep 30, 2016
test-support Add unboundid embedded ldap server Sep 30, 2016
test fix IT where the modified DN leads to a new entryUUID Jan 19, 2017
.gitignore LDAP-279: Initial version of complete user admin application. Nov 7, 2013
.travis.yml Add Travis Build Mar 18, 2016
CODE_OF_CONDUCT.adoc LDAP-344: Add Contributor Code of Conduct Feb 1, 2016 Update to CLA tooling Jun 9, 2016
build.gradle Upgrade to Spring IO Plugin 0.0.6.RELEASE Jan 4, 2017
changelog.txt LDAP-181: Changed log level to debug for missing 'returnObjFlag'. Aug 27, 2012 Next development version Oct 6, 2017
gradlew Upgrade gradle version (#408) Jun 17, 2016
gradlew.bat Upgrade gradle version (#408) Jun 17, 2016
license.txt Updated copyright notice. Aug 16, 2013
notice.txt Moved everything from mvn-build to trunk root. Oct 12, 2008 Fix broken Markdown headings Oct 6, 2017
settings.gradle Remove Spring Data Dec 16, 2016 Changed to new property skipTests. Nov 30, 2010

Spring LDAP

Join the chat at

Build Status

Code of Conduct

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to


Spring LDAP is a library to simplify LDAP programming in Java, built on the same principles as Spring Jdbc.

The LdapTemplate class encapsulates all the plumbing work involved in traditional LDAP programming, such as creating, looping through NamingEnumerations, handling Exceptions and cleaning up resources. This leaves the programmer to handle the important stuff - where to find data (DNs and Filters) and what do do with it (map to and from domain objects, bind, modify, unbind, etc.), in the same way that JdbcTemplate relieves the programmer of all but the actual SQL and how the data maps to the domain model.

In addition to this, Spring LDAP provides Exception translation from NamingExceptions to an unchecked exception hirearchy, as well as several utilities for working with filters, LDAP paths and Attributes.

For detailed information on the project, please refer to the reference documentation and javadocs. See the changelog for detailed information on changes in the latest version.


All major releases of this library are available in the central Maven repository. The following components are available:

  • spring-ldap-core - the core Spring LDAP library
  • spring-ldap-core-tiger - the Spring LDAP Java 5 support library
  • spring-ldap-test - support classes that helps LDAP with integration testing
  • spring-ldap-ldif-core - the Spring LDAP LDIF parsing library
  • spring-ldap-ldif-batch - the Spring Batch integration layer for the LDIF parsing library
  • spring-ldap-odm - The Object-Directory Mapping (ODM) framework

To include e.g. the spring-ldap-core component in your project, use the following dependency tag:


Milestone releases (such as release candidates) are available from the Spring framework milestone repo:

  <name>Spring Portfolio Milestone Repository</name>

Snapshot builds produced by the CI builds are available from the Spring framework snapshot repo:

  <name>Spring Portfolio Milestone Repository</name>

In order to e.g. try out the latest build snapshot of the core module, include the repository above and use the following dependency tag:


Note that while all milestone and snapshot builds have passed the (quite extensive) test suite, the artifacts here are obviously still work in progress. Feel free to use them for trying out new functionality and bug fixes for an upcoming version. Please report any problems or bugs in the issue tracker.