+

Search Tips   |   Advanced Search

Set namespace bindings


Instead of creating namespace bindings from a program, we can configure namespace bindings using the admin console. Name servers add these configured bindings to the namespace view by reading the configuration data for the bindings. Configured bindings are created each time a server starts, even when the binding is created in a transient partition of the namespace. One major use of configured bindings is to provide fixed qualified names for server application objects.

Assemble and deploy the application onto an appserver. If the application is a client to an application running in another server process, specify qualified jndiName values for the server objects of the other application during assembly or deployment.

See on qualified names, refer to Lookup names support in deployment descriptors and thin clients.

A deployed application requires qualified fixed names if the application is accessed by thin client applications or by Java EE client applications or server applications running in another server process.

When you configure a namespace binding, you create a qualified fixed name for a server object. A fixed name does not change if the object is moved to another server. A qualified fixed name with a cell scope has the following form:

cell/persistent/fixedName

The fixedName is an arbitrary fixed name.

Configure namespace bindings, and thus qualified fixed names, for the following objects:

To view or configure a namespace binding for an object of a deployed application...

 

  1. Go to the Name space bindings page.

    In the admin console, click Environment > Naming > Name space bindings.

  2. Select the desired scope.

    The scope determines where in the namespace binding is created. It also affects which name servers contain the binding in the namespace that they manage. Regardless of the scope, a namespace binding is accessible from all name servers in the cell. However, the scope can affect whether the lookup can be resolved locally by a name server or whether the name server must make a remote call to another name server to resolve the binding.

    Only namespace bindings created with the selected scope are visible in the collection table on the page. By changing the scope, we can see and create bindings in other scopes.

    1. Select a scope.

      If creating a new namespace binding, refer to the table below as a guide in selecting a scope:


      Table 1. Namespace binding scope descriptions

      Scope Description
      Cell Cell-scoped bindings are created under the cell persistent root context. Select Cell if the namespace binding is not specific to any particular node or server, or if we do not want the binding to be associated with any specific node, cluster or server. For example, we can use cell-scoped bindings to create fixed qualified names for enterprise beans. Fixed qualified names do not have any node, cluster or server names embedded within them.

      Cell-scoped bindings are created in all processes in the cell that contain a name server, specifically in administrative agent, dmgr, node agent, and appserver processes. Therefore all name servers in the cell can resolve those bindings locally. No remote invocations to other name servers are necessary to resolve the bindings.

      Node Node-scoped bindings are created under the node persistent root context for the selected node. Select Node if the namespace binding is specific to a particular node, or if we want the binding to be associated with a specific node.

      Node-scoped bindings are created in the node agent and all appserver processes in the selected node. Therefore, all name servers in the node can resolve those bindings locally. No remote invocations to other name servers are necessary to resolve the bindings. However, name servers in other nodes must make remote calls to the node agent in the selected node in order to resolve the bindings. For example, in order for a name server running in node node1 to resolve the name cell/nodes/node2/persistent/nodeScopedConfiguredBinding, the name server must make a remote call to the node agent running in node2. Any name server running in node2 can resolve that name without invoking any other name servers.

      Server Server-scoped bindings are created under the server root context for the selected server. Select Server if a binding is to be used only by clients of an application running on a particular server, or to configure a binding with the same name on different servers which resolve to different objects. Note that two servers can have configured bindings with the same name but resolve to different objects.

      Server-scoped bindings are created in the process of the selected appserver. Therefore, the name server running in the selected appserver can resolve those bindings locally. No remote invocations to other name servers are necessary to resolve the bindings. However, all other name servers in the cell must make remote calls to the selected server in order to resolve the bindings. For example, in order for the name server running in server1 in node node1 to resolve the name cell/nodes/node1/servers/server2/serverScopedConfiguredBinding, it must make a remote call to server2 in node1. Only the name server in server2 in node1 can resolve that name without invoking any other name servers.

      Cluster Cluster-scoped bindings are created under the server root context for all members in the selected cluster. Select Cluster if the namespace binding is specific to a particular cluster, or if we want the binding to be associated with a specific cluster.

      Cluster-scoped bindings are created in all member processes of the selected cluster. Therefore, the name server running in each member of the selected cluster can resolve those bindings locally. No remote invocations to other name servers are necessary to resolve the bindings. However, all other name servers in the cell must make remote calls to the node agent in the selected node in order to resolve the bindings. For example, in order for a name server running in any member of cluster1 to resolve the name cell/clusters/cluster2/clusterScopedConfiguredBinding, it must make a remote call to some member in cluster2. Only the name servers in cluster2 members can resolve that name without invoking any other name servers.

      Server-scoped bindings in cluster members override cluster-scoped bindings with the same binding name. However, cluster members generally should all be configured identically, and server-scoped bindings should not be required for individual cluster members.

    2. Click Apply.

  3. Create a new namespace binding.

    1. Open the New Name Space Binding wizard.

      On the Name space bindings page, click New.

    2. On the Specify binding type panel, select the binding type.

      The namespace binding can be for a constant string value, an EJB home, a CORBA CosNaming NamingContext or CORBA leaf node object, or an object that we can look up indirectly using JNDI.

    3. On the Specify basic properties panel, specify the binding identifier and other properties for the binding.

      For property descriptions, refer to the following:

    4. On the Other context properties panel, specify new properties to be passed to the javax.naming.InitialContext constructor.

      This step applies to indirect lookup bindings only.

    5. On the Summary panel, verify the settings and click Finish.

    The name of the new binding is displayed in the collection table on the Name space bindings page.

  4. Edit a previously created binding.

    1. From the collection table on the Name space bindings page, click the name of the binding to edit.

    2. Edit the binding properties as desired. Step 3(c) provides links to property descriptions.

    3. Click OK.

 

Results

Cell-scoped bindings are created under the cell persistent root context. Node-scoped bindings are created under the node persistent root context for the specified node. Server-scoped bindings are created under the server root context for the selected server. Cluster-scoped bindings are created under the server root context for each member of the selected cluster.


Name space binding collection
Specify binding type settings
String binding settings
EJB binding settings
CORBA object binding settings
Indirect lookup binding settings
Other context properties settings

 

Related concepts


Naming
Namespace federation
Configured name bindings