WebSphere Application Server supports the CORBA CosNaming service, which binds CORBA objects to a public name. Clients are "bootstrapped" according to the CORBA programming mode. CORBA-compliant Interoperable Object References (IORs) must be obtained and server objects must be bound into the CORBA CosNaming service. (For CORBA client access to enterprise beans, the EJB home is bound automatically into the CORBA Naming Service and, therefore, can be accessed through the CosNaming interfaces.)
The naming service provides a mapping between names and object references. When an object is created, it is assigned an object reference, which can be bound with a ::CosNaming::Name name into the namespace managed by the naming service. Any client (or any other object) with access to the naming service can use the associated ::CosNaming::Name name to retrieve the object reference.
The namespace is hierarchical and similar in structure to a file system tree. The nodes of the namespace are CORBA::objects (either NamingContext objects or leaf objects). A NamingContext object, or naming context, can contain zero or more bindings of name-object reference pairs. Each object, bound by name into a naming context, can be a leaf object or a subordinate NamingContext in the tree. Subordinate NamingContexts similarly can contain bindings of other NamingContexts and leaf objects.
For example, a servant object called WSLoggerObject1 is bound into naming context called WSLoggerContext, which was created by a CORBA server for the servant objects that it hosts. The WSLoggerContext naming context is bound into the domain naming context called domain, which is bound into the root naming context for the naming service. This might be represented by the domain.WSLoggerContext.WSLoggerObject1 object reference and represented by the following hierarchy:
/ (root) | domain | WSLoggerContext | WSLoggerObject1
This also can be represented by the name string "/domain/WSLoggerContext/WSLoggerObject1".