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.
JavaTM 2 SDK, v 1.4 includes JNDI and four service providers (listed below). These packages are also available separately for use with the JDK 1.1.x, the Java 2 SDK, v 1.2 and v 1.3.
Enhancements Since Version 1.4.0
Enhancements Since Version 1.3
- DNS Service Provider
- An Internet Domain Naming System (DNS) service provider has been added. This component enables applications to read data stored in the DNS.
- Security Enhancements to the LDAP Service Provider
- These enhancements bring the LDAP service provider in conformance with standard LDAP security requirements (RFC 2829) and promote better interoperability with widely deployed LDAP servers.
- Support for the "Start TLS" (Transport Layer Security) extension (RFC 2830) and External SASL authentication mechanism. This enables applications to establish secure sessions over existing LDAP connections. This feature introduces two new classes.
- Support for the GSS-API/Kerberos v5 SASL authentication mechanism (RFC 2222). This enables secure, authenticated access to the Windows 2000 and XP Active Directory servers.
- Support for the Digest-MD5 SASL authentication mechanism (RFC 2831).
See the LDAP Service Provider documentation and the JNDI Tutorial for details and examples.
- "corbaname" and "corbaloc" URL Support
- The COS naming service provider supports the Interoperable Naming Service (INS) specification (99-12-03). This enables applications to use the "corbaname" URL from the initial context and to configure the provider by using the "corbaname" and "corbaloc" URLs.
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.
Java 2 SDK, v 1.4 includes the following service providers:
For More Information