Namespace federation

Federating namespaces involves binding contexts from one namespace into another namespace.

For example, assume that a namespace, Namespace 1, contains a context under the name a/b. Also assume that a second namespace, Namespace 2, contains a context under the name x/y. (See the following illustration.) If context x/y in Namespace 2 is bound into context a/b in Namespace 1 under the name f2, the two namespaces are federated. Binding f2 is a federated binding because the context associated with that binding comes from another namespace. From Namespace 1, a lookup of the name a/b/f2 returns the context bound under the name x/y in Namespace 2. Furthermore, if context x/y contains an enterprise bean (EJB) home bound under the name ejb1, the EJB home can be looked up from Namespace 1 with the lookup name a/b/f2/ejb1. Notice that the name crosses namespaces. This fact is transparent to the naming client.

Federated namespace

In a product namespace, you can create federated bindings with the following restrictions:

  • Federation is limited to CosNaming name servers. A product name server is a Common Object Request Broker Architecture (CORBA) CosNaming implementation. You can create federated bindings to other CosNaming contexts. You cannot, for example, bind contexts from an LDAP name server implementation.
  • If you use JNDI to federate the namespace, you must use a WebSphere® Application Server initial context factory to obtain the reference to the federated context. If you use some other initial context factory implementation, you might not be able to create the binding or the level of transparency might be reduced.
  • A federated binding to a non-product naming context has the following functional limitations:
    • JNDI operations are restricted to the use of CORBA objects. For example, you can look up EJB homes, but you cannot look up non-CORBA objects such as data sources.
    • JNDI caching is not supported for non-product namespaces. This restriction affects the performance of lookup operations only.
    • If security is enabled, the producr does not support federated bindings to non-product namespaces.
  • Do not federate two product stand-alone server namespaces. Incorrect behavior might result. If you want to federate product namespaces, use servers running under the WebSphere Application Server Network Deployment package of WebSphere Application Server.
  • When federating the namespaces of two cells running a WebSphere Application Server Network Deployment package of WebSphere Application Server, the names of the cells must be different. Otherwise, incorrect behavior can result.