1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
   2 <html>
   3 <head>
   4 <!--
   5 Copyright (c) 1999, 2019, Oracle and/or its affiliates. All rights reserved.
   6 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   7 
   8 This code is free software; you can redistribute it and/or modify it
   9 under the terms of the GNU General Public License version 2 only, as
  10 published by the Free Software Foundation.  Oracle designates this
  11 particular file as subject to the "Classpath" exception as provided
  12 by Oracle in the LICENSE file that accompanied this code.
  13 
  14 This code is distributed in the hope that it will be useful, but WITHOUT
  15 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  16 FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  17 version 2 for more details (a copy is included in the LICENSE file that
  18 accompanied this code).
  19 
  20 You should have received a copy of the GNU General Public License version
  21 2 along with this work; if not, write to the Free Software Foundation,
  22 Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  23 
  24 Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  25 or visit www.oracle.com if you need additional information or have any
  26 questions.
  27 -->
  28 </head>
  29 <body bgcolor="white">
  30 
  31 Provides the means for dynamically plugging in support for accessing
  32 naming and directory services through the <code>javax.naming</code>
  33 and related packages.
  34 
  35 <p>
  36 This package defines the service provider interface (SPI) of the Java Naming
  37 and Directory Interface&trade; (JNDI). &nbsp;
  38 JNDI provides naming and directory functionality to applications
  39 written in the Java programming language.  It is designed to be
  40 independent of any specific naming or directory service
  41 implementation.  Thus a variety of services--new, emerging, and
  42 already deployed ones--can be accessed in a common way.
  43 
  44 <p>
  45 The JNDI SPI provides the means for creating JNDI service providers,
  46 through which JNDI applications access different naming and
  47 directory services.
  48 
  49 
  50 <h2>Plug-in Architecture</h2>
  51 
  52 The service provider package allows different implementations to be plugged in
  53 dynamically.
  54 These different implementations include those for the
  55 <em>initial context</em>,
  56 and implementations for contexts that can be reached 
  57 from the initial context.
  58 
  59 <h2>Java Object Support</h2>
  60 
  61 The service provider package provides support
  62 for implementors of the
  63 <code>javax.naming.Context.lookup()</code>
  64 method and related methods to return Java objects that are natural
  65 and intuitive for the Java programmer.
  66 For example, when looking up a printer name from the directory,
  67 it is natural for you to expect to get
  68 back a printer object on which to operate.
  69 
  70 
  71 <h2>Multiple Naming Systems (Federation)</h2>
  72 
  73 JNDI operations allow applications to supply names that span multiple
  74 naming systems.  So in the process of completing
  75 an operation, one service provider might need to interact
  76 with another service provider, for example, to pass on
  77 the operation to be continued in the next naming system.
  78 The service provider package provides support for
  79 different providers to cooperate to complete JNDI operations.
  80 
  81 
  82 <h2>Package Specification</h2>
  83 
  84 The JNDI SPI Specification and related documents can be found in the
  85 {@extLink jndi_overview JNDI documentation}.
  86 
  87 @since 1.3
  88 
  89 </body>
  90 </html>