| | |
| | | ! |
| | | ! CCPL HEADER END |
| | | ! |
| | | ! Copyright 2011-2012 ForgeRock AS |
| | | ! Copyright 2011-2013 ForgeRock AS |
| | | ! |
| | | --> |
| | | <document xmlns="http://maven.apache.org/XDOC/2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| | | xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd"> |
| | | <properties> |
| | | <title>About OpenDJ LDAP SDK</title> |
| | | <author email="opendj-dev@forgerock.org">ForgeRock AS</author> |
| | | <author email="opendj-dev@forgerock.org">${project.organization.name}</author> |
| | | </properties> |
| | | <body> |
| | | <section name="About OpenDJ LDAP SDK"> |
| | |
| | | Java directory server, and more. You can use OpenDJ SDK to create client |
| | | applications for use with any server that complies with the, |
| | | <a href='http://tools.ietf.org/html/rfc4510'>RFC 4510: Lightweight Directory |
| | | Access Protocol (LDAP): |
| | | Technical Specification Road Map</a> |
| | | . |
| | | Access Protocol (LDAP): Technical Specification Road Map</a>. |
| | | </p> |
| | | <p> |
| | | The OpenDJ LDAP SDK brings you easy-to-use connection management, |
| | | connection pooling, load balancing, and all the standard LDAP operations |
| | | to read and |
| | | write directory entries. OpenDJ LDAP SDK also lets you build |
| | | applications |
| | | with |
| | | capabilities defined in additional draft and |
| | | experimental RFCs that |
| | | are |
| | | supported by modern LDAP servers.</p> |
| | | to read and write directory entries. OpenDJ LDAP SDK also lets you build |
| | | applications with capabilities defined in additional draft and |
| | | experimental RFCs that are supported by modern LDAP servers. |
| | | </p> |
| | | </section> |
| | | <section name="Get the OpenDJ LDAP SDK"> |
| | | <p> |
| | | You can start developing your LDAP applications now by obtaining the |
| | | OpenDJ |
| | | LDAP SDK using any of the following methods: |
| | | </p> |
| | | OpenDJ LDAP SDK using any of the following methods: |
| | | </p> |
| | | <subsection name="Maven"> |
| | | <p> |
| | | By far the simplest method is to develop your application using Maven |
| | | and add the following settings to your |
| | | <b>pom.xml</b> |
| | | : |
| | | and add the following settings to your <b>pom.xml</b>: |
| | | </p> |
| | | <source><repositories> |
| | | <repository> |
| | | <id>forgerock-staging-repository</id> |
| | | <name>ForgeRock Release Repository</name> |
| | | <url>http://maven.forgerock.org/repo/releases</url> |
| | | <url>${mavenRepoReleases}</url> |
| | | <snapshots> |
| | | <enabled>false</enabled> |
| | | </snapshots> |
| | |
| | | <repository> |
| | | <id>forgerock-snapshots-repository</id> |
| | | <name>ForgeRock Snapshot Repository</name> |
| | | <url>http://maven.forgerock.org/repo/snapshots</url> |
| | | <url>${mavenRepoSnapshots}</url> |
| | | <releases> |
| | | <enabled>false</enabled> |
| | | </releases> |
| | | </repository> |
| | | </repositories> |
| | | |
| | | ... |
| | | |
| | | <dependencies> |
| | | </repositories></source> |
| | | <p> |
| | | The following dependency will load both the OpenDJ Core APIs and the |
| | | OpenDJ Grizzly network transport: |
| | | </p> |
| | | <source><dependencies> |
| | | <dependency> |
| | | <groupId>org.forgerock.opendj</groupId> |
| | | <artifactId>opendj-ldap-sdk</artifactId> |
| | | <version>${currentSDKversion}</version> |
| | | <groupId>${project.groupId}</groupId> |
| | | <artifactId>${project.artifactId}</artifactId> |
| | | <version>${project.version}</version> |
| | | <type>pom</type> |
| | | </dependency> |
| | | </dependencies></source> |
| | | <p> |
| | | In some use-cases, such as developing LDAP unit tests or embedded |
| | | LDAP applications, the network transport is not required, in which |
| | | case you can simply declare a dependency on the OpenDJ core APIs: |
| | | </p> |
| | | <source><dependencies> |
| | | <dependency> |
| | | <groupId>${project.groupId}</groupId> |
| | | <artifactId>opendj-core</artifactId> |
| | | <version>${project.version}</version> |
| | | </dependency> |
| | | </dependencies></source> |
| | | </subsection> |
| | | <subsection name="Download"> |
| | | <p> |
| | | The easiest way to download the OpenDJ LDAP SDK and all of its |
| | | dependencies is to get either the |
| | | <a href="http://builds.forgerock.org/view/OpenDJ/job/OpenDJ3/lastStableBuild/org.forgerock.opendj$opendj-ldap-toolkit/artifact/org.forgerock.opendj/opendj-ldap-toolkit/${currentSDKversion}/opendj-ldap-toolkit-${currentSDKversion}.zip">OpenDJ LDAP SDK Toolkit ZIP file</a> |
| | | or the |
| | | <a href="http://builds.forgerock.org/view/OpenDJ/job/OpenDJ3/lastStableBuild/org.forgerock.opendj$opendj-ldap-sdk-examples/artifact/org.forgerock.opendj/opendj-ldap-sdk-examples/${currentSDKversion}/opendj-ldap-sdk-examples-${currentSDKversion}.jar">OpenDJ LDAP SDK Examples JAR file</a> |
| | | . Alternatively, if you can download the individual JARs from the |
| | | following locations: |
| | | If you are not using Maven then you will need to download a pre-built |
| | | binary from the ForgeRock Maven repository, along with any compile |
| | | time <a href="dependencies.html">dependencies</a>: |
| | | </p> |
| | | <ul> |
| | | <li><a href="http://builds.forgerock.org/view/OpenDJ/job/OpenDJ3/lastStableBuild/org.forgerock.opendj$opendj-ldap-sdk/artifact/org.forgerock.opendj/opendj-ldap-sdk/${currentSDKversion}/opendj-ldap-sdk-${currentSDKversion}.jar">opendj-ldap-sdk-${currentSDKversion}.jar</a> - OpenDJ LDAP SDK</li> |
| | | <li><a href="http://maven.forgerock.org/repo/releases/org/forgerock/commons/i18n-core/${i18nFrameworkVersion}/i18n-core-${i18nFrameworkVersion}.jar">i18n-core-${i18nFrameworkVersion}.jar</a> - ForgeRock Commons I18N Framework</li> |
| | | <li><a href="http://search.maven.org/remotecontent?filepath=org/glassfish/grizzly/grizzly-framework/${grizzlyFrameworkVersion}/grizzly-framework-${grizzlyFrameworkVersion}.jar">grizzly-framework-${grizzlyFrameworkVersion}.jar</a> - Grizzly IO Framework</li> |
| | | <li><a href="${mavenRepoReleases}/org/forgerock/opendj/opendj-core">Stable releases</a></li> |
| | | <li><a href="${mavenRepoSnapshots}/org/forgerock/opendj/opendj-core/${project.version}">Latest development snapshot</a></li> |
| | | </ul> |
| | | </subsection> |
| | | <subsection name="Build"> |
| | | <p> |
| | | For the DIY enthusiasts you can build it yourself by checking out the |
| | | latest code using |
| | | <a href="source-repository.html">Subversion</a> |
| | | latest code using <a href="source-repository.html">Subversion</a> |
| | | and building it with Maven 3. |
| | | </p> |
| | | </subsection> |
| | |
| | | <section name="Getting started"> |
| | | <p> |
| | | The following example shows how the OpenDJ SDK may be used to |
| | | connect to |
| | | a Directory Server, authenticate, and then perform a |
| | | search. The search |
| | | results are output as LDIF to the standard |
| | | output: |
| | | </p> |
| | | connect to a Directory Server, authenticate, and then perform a |
| | | search. The search results are output as LDIF to the standard output: |
| | | </p> |
| | | <source>// Create an LDIF writer which will write the search results to stdout. |
| | | final LDIFEntryWriter writer = new LDIFEntryWriter(System.out); |
| | | Connection connection = null; |