Java Naming and Directory InterfaceTM
The Java Naming and Directory InterfaceTM (JNDI) provides naming and directory functionality to applications written in the JavaTM programming language. It is designed to be independent of any specific naming or directory service implementation. Thus a variety of services--new, emerging, and already deployed ones--can be accessed in a common way.
The JNDI architecture consists of an API (Application Programming Interface) and an SPI (Service Provider Interface). Java applications use this API to access a variety of naming and directory services. The SPI enables a variety of naming and directory services to be plugged in transparently, allowing the Java application using the API of the JNDI technology to access their services.
Enhancements in Version 1.5.0
Enhancements in Earlier Releases
- Support for accessing the fullname from the NameClassPair class
This feature enables getting the Distinguished Name from the SearchResult. To support this, two new methods have been added to the javax.naming.NameClassPair class:
- Support for standard LDAP controls
The necessary LDAP controls are already supported in the LDAP Booster Pack extension package which is available for the JNDI/LDAP service provider. The LDAP controls have been recently standardized in RFCs. These are made available in the javax.naming.ldap package of J2SE through the following classes.
- ManageReferralControl (RFC 3296)
- PagedResultsControl (RFC 2696)
- SortControl (RFC 2891)
- Support for manipulation of LDAP names
This feature enables easy manipulation of LDAP Names to build distinguished names or relative distinguished names methodically, and enables formatting them into their strings representation as defined by RFC 2253. To support this, two new classes have been added to the javax.naming.ldap package.
JNDI Architecture Documents
To use JNDI with a particular naming or directory service, you need a JNDI service provider, which is a module that plugs in beneath the JNDI API to access the naming or directory service. The Java Software Web site maintains a list of service providers available for JNDI for use with the JDK 1.1.x, the Java 2 SDK, v 1.2, v 1.3 and v 1.4.
Java 2 SDK, v 1.4 includes the following service providers:
For More Information