< prev index next >

src/java.corba/share/classes/org/omg/CosNaming/package.html

Print this page




  30 </head>
  31 <body bgcolor="white">
  32 
  33   Provides a naming service for Java&nbsp;IDL.  The Object Request Broker Daemon
  34   (ORBD) also includes both a transient and persistent naming service.
  35 
  36 
  37   <P>
  38   The package and all its classes and interfaces 
  39   were generated by running the tool <code>idlj</code> on the file
  40   <code>nameservice.idl</code>, which is a module written in OMG IDL.
  41 
  42   <H3>Package Specification</H3>
  43 
  44 <P>For a precise list of supported sections of official specifications with which 
  45 the Java[tm] Platform, Standard Edition 6, ORB complies, see <A 
  46 HREF="../CORBA/doc-files/compliance.html">Official Specifications for CORBA 
  47 support in Java[tm] SE 6</A>.
  48 
  49   <H2>Interfaces</H2>
  50   The package <tt>org.omg.CosNaming</tt> contains two public interfaces
  51   and several auxiliary classes. 
  52   <P>
  53   The interfaces are:
  54   <UL>
  55   <LI><TT>NamingContext</TT> 
  56   <LI><TT>BindingIterator</TT> 
  57   </UL>
  58   <P>
  59   These two interfaces provide the means to bind/unbind names and object
  60   references, to retrieve bound object references, and
  61   to iterate through a list of bindings.  The <code>NamingContext</code>
  62   interface supplies the main functionality for the naming service, and
  63   <code>BindingIterator</code> provides a means of iterating through a list
  64   of name/object reference bindings.
  65 
  66   <H2>Auxiliary Classes</H2>
  67   In order to map an OMG IDL interface to the Java programming language,
  68   the idlj compiler creates Java classes that can be thought of
  69   as auxiliary classes.
  70   Comments for the generated auxiliary classes
  71   used by the interfaces <code>NamingContext</code> and 
  72   <code>BindingIterator</code> are included here.
  73 
  74   <H3>Classes Used by <code>NamingContext</code> and
  75   <code>BindingIterator</code></H3>
  76   The following are classes used by


 282 Sun's implementation of the <code>CosNaming</code> package complies
 283 with the OMG <code>COSNaming</code> specification.  In other words,
 284 the APIs in Sun's naming service are implemented according to the
 285 guidelines for a naming service provided by OMG.  Therefore, if a 
 286 third-party vendor has implemented a naming service that is OMG
 287 compliant, it is possible to switch between Sun's implementation of
 288 <code>CosNaming</code> and the third-party vendor's implementation.
 289 However, it is important to understand that there can be minor
 290 variations in the way different vendors implement the naming service,
 291 such as differences in the exception strings.
 292 
 293 <h3>Instructions for Using a Third Party's Naming Service</h3>
 294 Although we encourage using an ORB and ORB services that are both
 295 from one vendor, it is possible to plug in a third party's 
 296 <code>COSNaming</code> implementation with Sun's RMI-IIOP ORB.
 297 Here are the steps to follow:
 298 <OL>
 299   <LI>Create a properties file for the Bootstrap server and give it
 300       two entries.  For example, you could call this properties file 
 301       <code>/tmp/services</code> and put the following in it:
 302       <code>NameService, &lt;Stringified IOR of the Root Naming 
 303 Context&gt;</code>.
 304       <P>
 305       This associates <code>NameService</code> with the Root Naming
 306       Context of the <code>CosNaming</code> implementation that you 
 307       want to use.
 308   <LI>Start the standalone Bootstrap server using the following command:
 309   <pre>
 310       <code>
 311       java -classpath $(CLASSPATH)
 312       com.sun.corba.ee.internal.CosNaming.BootstrapServer -InitialServicesFile
 313       "/tmp/services" [-ORBInitialPort port]
 314       </code>
 315   </pre>
 316   <P>
 317   Note that the square brackets at the end of the command indicate that
 318   specifying a port number is optional.
 319 </OL>
 320 <P>
 321 Now when an application calls the method 
 322 <code>org.omg.CORBA.ORB.resolve_initial_references</code>, CORBA
 323 processes will contact the Bootstrap Server to get the Root Naming




  30 </head>
  31 <body bgcolor="white">
  32 
  33   Provides a naming service for Java&nbsp;IDL.  The Object Request Broker Daemon
  34   (ORBD) also includes both a transient and persistent naming service.
  35 
  36 
  37   <P>
  38   The package and all its classes and interfaces
  39   were generated by running the tool <code>idlj</code> on the file
  40   <code>nameservice.idl</code>, which is a module written in OMG IDL.
  41 
  42   <H3>Package Specification</H3>
  43 
  44 <P>For a precise list of supported sections of official specifications with which
  45 the Java[tm] Platform, Standard Edition 6, ORB complies, see <A
  46 HREF="../CORBA/doc-files/compliance.html">Official Specifications for CORBA
  47 support in Java[tm] SE 6</A>.
  48 
  49   <H2>Interfaces</H2>
  50   The package <code>org.omg.CosNaming</code> contains two public interfaces
  51   and several auxiliary classes.
  52   <P>
  53   The interfaces are:
  54   <UL>
  55   <LI><code>NamingContext</code>
  56   <LI><code>BindingIterator</code>
  57   </UL>
  58   <P>
  59   These two interfaces provide the means to bind/unbind names and object
  60   references, to retrieve bound object references, and
  61   to iterate through a list of bindings.  The <code>NamingContext</code>
  62   interface supplies the main functionality for the naming service, and
  63   <code>BindingIterator</code> provides a means of iterating through a list
  64   of name/object reference bindings.
  65 
  66   <H2>Auxiliary Classes</H2>
  67   In order to map an OMG IDL interface to the Java programming language,
  68   the idlj compiler creates Java classes that can be thought of
  69   as auxiliary classes.
  70   Comments for the generated auxiliary classes
  71   used by the interfaces <code>NamingContext</code> and
  72   <code>BindingIterator</code> are included here.
  73 
  74   <H3>Classes Used by <code>NamingContext</code> and
  75   <code>BindingIterator</code></H3>
  76   The following are classes used by


 282 Sun's implementation of the <code>CosNaming</code> package complies
 283 with the OMG <code>COSNaming</code> specification.  In other words,
 284 the APIs in Sun's naming service are implemented according to the
 285 guidelines for a naming service provided by OMG.  Therefore, if a
 286 third-party vendor has implemented a naming service that is OMG
 287 compliant, it is possible to switch between Sun's implementation of
 288 <code>CosNaming</code> and the third-party vendor's implementation.
 289 However, it is important to understand that there can be minor
 290 variations in the way different vendors implement the naming service,
 291 such as differences in the exception strings.
 292 
 293 <h3>Instructions for Using a Third Party's Naming Service</h3>
 294 Although we encourage using an ORB and ORB services that are both
 295 from one vendor, it is possible to plug in a third party's
 296 <code>COSNaming</code> implementation with Sun's RMI-IIOP ORB.
 297 Here are the steps to follow:
 298 <OL>
 299   <LI>Create a properties file for the Bootstrap server and give it
 300       two entries.  For example, you could call this properties file
 301       <code>/tmp/services</code> and put the following in it:
 302       <code>NameService, &lt;Stringified IOR of the Root Naming Context&gt;</code>.

 303       <P>
 304       This associates <code>NameService</code> with the Root Naming
 305       Context of the <code>CosNaming</code> implementation that you
 306       want to use.
 307   <LI>Start the standalone Bootstrap server using the following command:
 308   <pre>
 309       <code>
 310       java -classpath $(CLASSPATH)
 311       com.sun.corba.ee.internal.CosNaming.BootstrapServer -InitialServicesFile
 312       "/tmp/services" [-ORBInitialPort port]
 313       </code>
 314   </pre>
 315   <P>
 316   Note that the square brackets at the end of the command indicate that
 317   specifying a port number is optional.
 318 </OL>
 319 <P>
 320 Now when an application calls the method
 321 <code>org.omg.CORBA.ORB.resolve_initial_references</code>, CORBA
 322 processes will contact the Bootstrap Server to get the Root Naming


< prev index next >