[![Join the chat at https://gitter.im/spring-projects/spring-ldap](https://badges.gitter.im/spring-projects/spring-ldap.svg)](https://gitter.im/spring-projects/spring-ldap?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![Build Status](https://travis-ci.org/spring-projects/spring-ldap.svg?branch=main)](https://travis-ci.org/spring-projects/spring-ldap)
[![Revved up by Develocity](https://img.shields.io/badge/Revved%20up%20by-Develocity-06A0CE?logo=Gradle&labelColor=02303A)](https://ge.spring.io/scans?search.rootProjectNames=spring-ldap)
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 to 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 hierarchy, 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](https://docs.spring.io/spring-ldap/docs/current/reference/) and [javadocs](https://docs.spring.io/spring-ldap/docs/2.3.x/apidocs/). See [the changelog](https://github.com/spring-projects/spring-ldap/releases) for detailed information on changes in the latest version.
This project adheres to the Contributor Covenant [code of conduct](CODE_OF_CONDUCT.adoc). By participating, you are expected to uphold this code. Please report unacceptable behavior to [email protected].
See Getting Spring LDAP for how to obtain Spring LDAP.
Be sure to read the Spring LDAP Reference. Extensive JavaDoc for the Spring LDAP code is also available in the Spring LDAP API Documentation.
You may also want to check out the change log for new features.
Spring LDAP uses a Gradle-based build system.
In the instructions below, ./gradlew
is invoked from the root of the source tree and serves as
a cross-platform, self-contained bootstrap mechanism for the build.
Git and the JDK17 build.
Be sure that your JAVA_HOME
environment variable points to the jdk-17
folder extracted from the JDK download.
git clone [email protected]:spring-projects/spring-ldap.git
./gradlew build
The reference docs are not currently included in the distribution zip. You can build the reference docs for this branch by running the following command:
./gradlew :spring-ldap-docs:antora
That command publishes the docs site to the docs/build/site
directory.
The playbook branch describes how to build the reference docs in detail.
Discover more commands with ./gradlew tasks
.
Check out the Spring LDAP tags on Stack Overflow. Commercial support is available too.
Pull requests are welcome; see the contributor guidelines for details.
Spring LDAP is Open Source software released under the Apache 2.0 license.