Change Log: LDAP Classes for Java - Unix and Linux

June 2009


  • Added a new extension to get the effective privilege for a list of attributes.

  • Done following fix in DN class:

  • Connection is possible as anonymous bind with a null-bind DN or null-password.

  • Added support for the IPv6 addresses during the connection.

February 2008


  • A new control LDAPPagedResultsControl is added for results to be returned in pages of specified size from server.

  • LDAP Connection constructor with the time out value is modified to use the socketFactory, which is set through the method setSocketFactory().

  • New exception is thrown in case of connection failure.

  • Fix for PoolManager being unable to rebind the existing available connections on LDAP server failure.


  • Added two controls to the Supported Controls section.

  • Added the functionality of Paged Results Control Supported Controls section.

October 2007


  • A new LDAP extension has been implemented to obtain the X500 DN from the DNS name given.

October 2006


  • Fixed a couple of eDirectory Events related bugs.

June 2006


  • Added support for JDK 1.5.

  • Fixed a couple of defects in samples.


  • Extended Constructor information in the section 'LDAP Connections'.

March 2006


  • Added a new constructor with the parameter timeout in LDAPConnection class to support Socket Timeout value.

  • Added two new methods setSocketTimeOut and getSocketTimeOut to set and get the socket connect timeouts respectively.

  • Removed the following samples:

    • is removed as the constructor in the ldapconnection class does the same function.

    • is removed as NMAS bind (through Simple Password and NDS mechanisms) is not supported in NMASClient.jar.

  • Fixed the defect for thread synch done.


  • Added information about LDAPConnection constructor.

  • Fixed formatting issues.

October 2005


Fixed defect so that the connection fails when the same connection is used to connect to an LDAP server multiple times.


Transitioned to revised Novell standards.

June 2005


  • Support for Subnordinate Subtree search scope for Novell Virtual Directory Services (NVDS).

  • DSML serialization support for class.

  • Support for LDAP EffectivePrivilegesControl for NVDS.

  • Added Junit test automation to verify thread safe of Java LDAP SDK code base. This basically tests thread safety in pool of LDAPConnection clones, while handling the client requests simultanously.

  • Verified IntermediateResponse operation in Java LDAP SDK as per the standard.


  • Added information on Subordinate Subtree search scope.

  • Added information on DSML serialization support for class.

March 2005


  • Added support for object based backup/restore extensions to Java LDAP SDK.

  • Fixed the following defects:

    • either needs to be implemented per the specification, or our version needs to be repackaged into a Novell-named package (any Novell products using these will need to be fixed before using the new jar).

    • renameRDN sample could not move entry on ActiveDirectory.


  • Added information on object based backup/restore extensions in the LDAP Class for Java Extensions.


  • Added under the directory \pkg\samples\extensions, the sample for demonstrating the use of LDAP-based backup and restore APIs.

October 2004

Updated the license.txt file. In addition, the following changes were made:


  • Added Default DSML serialization support, which allows objects to be serialized by default in DSML.


  • Added documentation regarding the default DSML serialization support.

June 2004


  • Added LDAP Events Support.


  • Added information on the following classes:

  • EntryEventData Class

  • DSETimestamp Class

  • ValueEventData Class

  • DebugEventData Class

  • DebugParameter Class

  • ReferralAddress Class

  • GeneralDSEventData Class

  • BinderyObjectEventData Class

  • SecurityEquivalenceEventData Class

  • ModuleStateEventData Class

  • NetworkAddressEventData Class

  • ConnectionStateEventData Class


  • Added under the directory \javaldap\samples\controls the sample for demonstrating Persistence Search.

  • Added under the directory \javaldap\samples\extensions the for demonstrating eDirectory legacy eventing.

  • Added the Junit Test programs to automate the unit testing of eventing system (both PSearch and eDirectory Legacy eventing system in Java LDAP).

  • Added under the directory \javaldap\tests\com\novell\ldap\test\common the sample for the Common Test Utility class.

  • Added under the directory \javaldap\tests\com\novell\ldap\events these Persistence Search test classes:






  • Added under the directory \javaldap\tests\com\novell\ldap\events\edir these eDirectory Legacy eventing system test classes:








February 2004

Rebuilt all downloads to include changes to license.txt and Readme files. For detailed changes for each download, see the following sections:


  • Implemented LBURP APIs.

  • Added LDAPExtendedResponse.register method, which implements a generalized response factory for LDAP Extended Responses.

  • Implemented the register method for the LDAPExtendedResponse class.

  • Modified existing Extended Requests classes in Jldap to use LDAPExtendedresponse.register method to register the LDAPExtendedResponse classes.

  • Implemented LDAP Intermediate Response draft (draft-rharrison-ldap-intermediate-resp-01.txt) Object Serialization.

  • Fixed using Java to import an LDIF file.

  • Fixed LDIFWriter to write multiple ldapmodification values.


  • No other changes.


  • Added sample program demonstrating use of LBURP API.

October 2003


  • Implemented Java SASL API (as defined in JSR28 - Java SASL Specificationin and draft-weltman-java-sasl-05.txt).


  • Added HP-UX support.

  • Added IETF draft 18 compliance.


  • Added new sample code for: MD5Bind, NMASBind, SaslExternal, and GetAttributeSchema.

June 2003

Made the following changes:

  • Made enhancements to the DSML parser.

  • Added New Package, which contains classes to support connection pool management. These classes were previously located in the sample directory.

  • Added accessor methods to the LDAPSearchRequest class, including a method to retrieve the search filter as parsed into its separate components.

March 2003

Made the following updates:

  • Improved search filter error checking. Filters can now include characters outside the ASCII set, which no longer need to be escaped.

  • Added samples demonstrating a mechanism for connection pooling.

  • Added support for reading and writing LDIF and DSML files (LDIF V1 API for LDAP and DSML V2 API for LDAP).

  • Updated LDAPSearchQueue and LDAPResponseQueue to leverage a common class in handling the queue functionality.

  • Updated Clone to work properly in all classes and updated Bind to allow a null-string password.

For more details, see the Readme.

18 November 2002

Fixed LDAPConnection.getCount() to return correct results as per the IETF specification: "Returns a count of the entries and exceptions in the object. If the search was submitted with a batch size greater than 0, this reports the number of results received so far but not enumerated with next()."

September 2002

The LDAP Classes for Java now conform to the IETF specification for the API as defined in draft-ietf-ldapext-ldap-java-api-18.txt with the following exceptions:

  • Classes do not yet implement Serializable.

  • SASL bind functions are not yet implemented.

  • The LDAPExtendedResponse class does not yet implement the register method.

Made the following updates:

  • Changed the APIs for modifying schema: LDAPSchema now extends LDAPEntry, LDAPSchemaElement now extends LDAPAttribute. The same methods in LDAPConnection used for modifying the Attributes and Entries in the directory are used to modify schema.

  • Updated LDAPException and LDAPUrl classes to conform the draft.

  • Updated LDAPEntry and LDAPAttribute classes so that sorting is now done through the Java Collection Framework.

For further details, see the Readme.

Note: Because of the change to LDAPAttributeSet, the classes are not binary compatible with previous releases. You must recompile your applications to run with the September 2002 release.

May 2002

Added the following features:

  • IETF Draft 17 features (for details, see the readme)

  • Implemented startTLS

  • LDAP certification with Critical Path*

February 2002

Added the following features (for more details, see the readme):

  • Added code samples

  • Renamed Naming Context APIs to use Replica and Partition terminology

  • Updated the getBindDN extension

  • Corrected memory leak that occurs when performing mutiple synchronous searches on the same connection

  • Added LDAP Certification with iPlanet, Microsoft*, Computer Associates*, IBM*, Oracle*, OpenLDAP*, and Critical Path

In documentation, made the following changes:

  • Added additional information on the com.novell.ldap and org.ietf.ldap packages

  • Separated the com.novell.ldap and the org.ietf.ldap JavaDoc

  • Updated SSL configuration instructions

  • Enhanced the searching, referral, and exception handling sections of concepts

September 2001

Added the following features:

  • Performance enhancements

  • Support for JSSE (for SSL support)

  • IETF draft version 15 conformance

  • Additional code samples for time stamp modification and a comprehensive search example

  • LDAP Certification with iPlanet, Microsoft, Computer Associates, IBM, Oracle, and OpenLDAP

  • LDAP 2000 support

In documentation, made the following changes:

  • Revised the searching section and added additional information on search filters and LDAPBind and LDAPRebind

  • Added information on the org.ietf.ldap package

  • Added additional cross referencing and sample code linking to the JavaDoc

June 2001

Added as a new NDK component.