Home Page
>
Java Naming and Directory Interface(TM).
>
Overview of JNDI
Naming Package
The
javax.naming package contains classes and interfaces for accessing naming
services.
Context
The javax.naming package defines a
Context interface, which is the core interface for looking up, binding/unbinding,
renaming objects and creating and destroying subcontexts.
- Lookup
- The most commonly used operation is
lookup().
You supply lookup()
the name of the object you want
to look up, and it returns the object bound to that name.
- Bindings
-
listBindings() returns an enumeration of name-to-object bindings.
A binding is a tuple containing the name of the bound object,
the name of the object's class, and the object itself.
- List
-
list()is similar to listBindings(),
except that it returns an enumeration of names containing an
object's name and the name of the object's class.
list() is useful for applications such
as browsers that want to discover information about the objects
bound within a context but that don't need all of the actual objects.
Although listBindings() provides all of the same information,
it is potentially a much more expensive operation.
- Name
-
Name is an interface that represents a generic
name--an ordered sequence of zero or more components.
The Naming Systems use this interface to define the names that follow
its conventions as described in the Naming and Directory Concepts lesson.
- References
-
Objects are stored in naming and directory services in different ways.
A reference might be a very compact representation
of an object.
The JNDI defines the
Reference class
to represent reference.
A reference contains information on how to construct a copy of the object.
The JNDI will attempt to turn references looked up from the directory
into the Java objects that they represent so that
JNDI clients have the illusion that what
is stored in the directory are Java objects.
The Initial Context
In the JNDI, all naming and directory operations are performed relative
to a context. There are no absolute roots.
Therefore the JNDI defines an
InitialContext, which provides a starting point for naming and directory operations.
Once you have an initial context, you can use it to
look up other contexts and objects.
Exceptions
The JNDI defines a class hierarchy for exceptions that can be thrown in
the course of performing naming and directory operations. The root of
this class hierarchy is
NamingException.
Programs interested in dealing with a particular exception
can catch the corresponding subclass of the exception.
Otherwise, they should catch
NamingException.