orbd(1)orbd(1)NAMEorbd - The Object Request Broker Daemon
orbd is used to enable clients to transparently locate and invoke per‐
sistent objects on servers in the CORBA environment.
SYNOPSISorbd [ options ]
DESCRIPTION
The Server Manager included with the orbd tool is used to enable
clients to transparently locate and invoke persistent objects on server
in the CORBA environment. The persistent servers, while publishing the
persistent object references in the Naming Service, include the port
number of the ORBD in the object reference instead of the port number
of the Server. The inclusion of ORBD port number in the object refer‐
ence for persistent object references has the following advantages:
· The object reference in the Naming Service remains
independent of the server life cycle. For example, the object refer‐
ence could be published by the server in the Naming Service when it
is first installed, and then independent of how many times the server
is started or shutdown, the ORBD will always return the correct
object reference to the invoking client.
· The client needs to lookup the object reference in
the Naming Service only once, and can keep re-using this reference
independent of the chanes introduced due to server life cycle.
To access ORBD's Server Manager, the server must be started using
servertool, which is a command-line interface for application program‐
mers to register, unregister, startup, and shutdown a persistent
server. For more information on the Server Manager, see the section in
this document titled Server Manager.
REQUIRED OPTIONS-ORBInitialPort nameserverport
Specifies the port on which the name server should be started.
Once started, orbd will listen for incoming requests on this
port. Note that when using Solaris software, you must become
root to start a process on a port under 1024. For this reason,
we recommend that you use a port number greater than or equal to
1024. (required)
OTHER OPTIONS-port port
Specifies the activation port where the ORBD should be started.
The default value for this port is 1049. This port number is
added to the port field of the persistent Interoperable Object
References (IOR). (optional)
-defaultdb directory
Specifies the base where the ORBD persistent storage directory
orb.db is created. If this option is not specified, the default
value is "./orb.db". (optional)
-serverPollingTime milliseconds
Specifies how often the daemon thread checks for the health of
registered servers. ORBD polls process health every millisec‐
onds. The default value is 1,000 ms (or 1 second). The value
specified for milliseconds must be a valid integer.
-serverStartupDelay milliseconds
Specifies how long the ServerManager waits before sending a
location forward exception after the server is restarted. ORBD
waits for milliseconds before raising a location forward excep‐
tion. The default value is 1,000 ms (or 1 second). The value
specified for milliseconds must be a valid integer.
-Joption
Pass option to the Java virtual machine, where option is one of
the options described on the man page for the java application
launcher, java(1). For example, -J-Xms48m sets the startup mem‐
ory to 48 megabytes. It is a common convention for -J to pass
options to the underlying virtual machine.
Starting and Stopping the Name Service
A Naming Service is a CORBA service that allows CORBA objects to be
named by means of binding a name to an object reference. The name bind‐
ing may be stored in the naming service, and a client may supply the
name to obtain the desired object reference.
Prior to running a client or a server, you will start ORBD. ORBD
includes a persistent Naming Service and a transient Naming Service,
both of which are an implementation of the COS Naming Service.
· The Persistent Naming Service provides persistence
for naming contexts. This means that this information is persistent
across service shutdowns and startups, and is recoverable in the
event of a service failure. If ORBD is restarted, the Persistent Nam‐
ing Service will restore the naming context graph, so that the bind‐
ing of all clients' and servers' names remains intact (persistent).
· For backward compatibility, tnameserv, a
Transient Naming Service shipped with older versions of the JDK, is
also included in this release of J2SE. A transient naming service
retains naming contexts as long as it is running. If there is a ser‐
vice interruption, the naming context graph is lost.
The -ORBInitialPort argument is a required command-line argument for
orbd, and is used to set the port number on which the Naming Service
will run. The following instructions assume you can use port 1050 for
the Java IDL Object Request Broker Daemon. When using Solaris software,
you must become root to start a process on a port under 1024. For this
reason, we recommend that you use a port number greater than or equal
to 1024. You can substitute a different port if necessary.
TO start orbd from a UNIX command shell, enterL
orbd-ORBInitialPort 1050&
From an MS-DOS system prompt (Windows), enter:
start orbd-ORBInitialPort 1050
Now that ORBD is running, you can run your server and client applica‐
tions. When running the client and server applications, they must be
made aware of the port number (and machine name, if applicable) where
the Naming Service is running. One way to do this is to add the follow‐
ing code to your application:
Properties props = new Properties();
props.put("org.omg.CORBA.ORBInitialPort", "1050");
props.put("org.omg.CORBA.ORBInitialHost", "MyHost");
ORB orb = ORB.init(args, props);
In this example, the Naming Service is running on port 1050 on host
"MyHost". Another way is to specify the port number and/or machine name
when running the server or client application from the command line.
For example, you would start your "HelloApplication" with the following
command line:
java HelloApplication -ORBInitialPort 1050 -ORBInitialHost MyHost
To stop the naming service, use the relevant operating system command,
such as pkill orbd on Solaris, or Ctrl+C in the DOS window in which
orbd is running. Note that names registered with the naming service may
disappear when the service is terminated if the naming service is tran‐
sient. The Java IDL naming service will run until it is explicitly
stopped.
For more information on the Naming Service included with ORBD, see Nam‐
ing Service.
Server Manager
To access ORBD's Server Manager and run a persistent server, the server
must be started using servertool, which is a command-line interface for
application programmers to register, unregister, startup, and shutdown
a persistent server. When a server is started using servertool, it must
be started on the same host and port on which orbd is executing. If the
server is run on a different port, the information stored in the data‐
base for local contexts will be invalid and the service will not work
properly.
Server Manager: an Example
Using the sample tutorial for our demonstration, you would run the idlj
compiler and javac compiler as shown in the tutorial. To run the Server
Manager, follow these steps for running the application:
1. Start orbd.
To start orbd from a UNIX command shell, enter:
orbd-ORBInitialPort 1050
From an MS-DOS system prompt (Windows), enter:
start orbd-ORBInitialPort 1050
Note that 1050 is the port on which you want the name server to run.
-ORBInitialPort is a required command-line argument. When using Solaris
software, you must become root to start a process on a port under 1024.
For this reason, we recommend that you use a port number greater than
or equal to 1024.
2. Start the servertool:
To start the Hello server, enter:
servertool -ORBInitialPort 1050
Make sure the name server (orbd) port is the same as in the previous
step, for example, -ORBInitialPort 1050. The servertool must be started
on the same port as the name server.
3. Start the Hello server from the servertool prompt:
servertool > register -server HelloServer -classpath .
-applicationName HelloServerApName
The servertool registers the server, assigns it the name of "Hel‐
loServerApName", and displays its server id.
4. Run the client application from another terminal window or prompt:
java HelloClient -ORBInitialPort 1050 -ORBInitialHost localhost
For this example, you can omit -ORBInitialHost localhost since the name
server is running on the same host as the Hello client. If the name
server is running on a different host, use -ORBInitialHost nameserver‐
host to specify the host on which the IDL name server is running.
Specify the name server (orbd) port as done in the previous step, for
example, -ORBInitialPort 1050.
5. When you have finished experimenting with the Server Manager, be
sure to shut down or kill the name server (orbd) and servertool.
To shut down orbd from a DOS prompt, select the window that is running
the server and enter Ctrl+C to shut it down. To shut down orbdfrom a
Unix shell, find the process, and kill it. The server will continue to
wait for invocations until it is explicitly stopped.
To shut down the servertool, type quit and press the Enter key on the
keyboard.
SEE ALSO
Naming Service, servertool
10 March 2001 orbd(1)