Configuring namespace bindings
Instead of creating namespace bindings from a program, you can configure namespace bindings using the administrative 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.
Before you begin
Assemble and deploy your application onto an application server. 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. For more information on qualified names, refer to the topic on lookup names support in deployment descriptors and thin clients.
About this task
A deployed application requires qualified fixed names if the application is accessed by thin client applications or by Java™ Platform, Enterprise Edition (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 is a binding name in a cell persistent partition of the namespace. A qualified fixed name has the following form:
The fixedName is an arbitrary fixed name. For more information about cell and node persistent partitions, see Namespace logical view.
You can configure namespace bindings, and thus qualified fixed names, for the following objects:
- A string constant value
- An enterprise bean (EJB) home installed on a server in the cell
- A CORBA object available from a CosNaming name server
- An object bound in a WebSphere® Application Server namespace that is accessible using a Java Naming and Directory Interface (JNDI) indirect lookup
To view or configure a namespace binding for an object of a deployed application, complete the following:
Go to the Name space bindings page.
In the administrative console, click.
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, you can see and create bindings in other scopes.
Select a scope.
If you are creating a new namespace binding, refer to the following table as a guide in selecting a scope:
Table 1. Namespace binding scope descriptions. The scope can be a cell, node, server, or cluster. 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 you do not want the binding to be associated with any specific node or server. For example, you can use cell-scoped bindings to create fixed qualified names for enterprise beans. Fixed qualified names do not have any node or server names embedded within them. 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 you want the binding to be associated with a specific node. 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 if you want 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 application server. Therefore, the name server running in the selected application server 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.
- Click Apply.
- Select a scope.
Create a new namespace binding.
The name of the new binding is displayed in the collection table on the Name space bindings page.
Open the New Name Space Binding wizard.
On the Name space bindings page, click New.
On the Specify binding
type page, 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 you can look up indirectly using JNDI.
- On the Specify basic properties page, specify the binding identifier and other properties for the binding.
- On the Summary page, verify the settings and click Finish.
- Open the New Name Space Binding wizard.
- Optional: Edit a previously created binding.
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.