orbd(1)                     General Commands Manual                    orbd(1)



Name
       orbd - 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.

       See also: Naming Service @
       http://docs.oracle.com/javase/7/docs/technotes/guides/idl/jidlNam-
       ing.html

SYNOPSIS
       orbd <options>


DESCRIPTION
       The Server Manager included with the orbd tool is used to enable
       clients to transparently locate and invoke persistent objects on
       servers in the CORBA environment. The persistent servers, while pub-
       lishing 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 an ORBD port number in the
       object reference for persistent object references has the following
       advantages:

          o The object reference in the Naming Service remains independent of
            the server life cycle. For example, the object reference 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.

          o The client needs to lookup the object reference in the Naming Ser-
            vice only once, and can keep re-using this reference independent
            of the changes introduced due to server life cycle.


       To access ORBD's Server Manager, the server must be started using
       servertool(1), which is a command-line interface for application pro-
       grammers 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.

       When orbd starts up, it also starts a naming service. For more informa-
       tion on the naming service, link to Naming Service @
       http://docs.oracle.com/javase/7/docs/technotes/guides/idl/jidlNam-
       ing.html.

OPTIONS
   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 rec-
             ommend that you use a port number greater than or equal to 1024.
             (required)


   OTHER OPTIONS
          -port port
             Specifies the activation port where ORBD should be started, and
             where ORBD will be accepting requests for persistent objects. 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 ORBD checks for the health of persistent
             servers registered via servertool. The default value is 1,000 ms.
             The value specified for milliseconds must be a valid positive
             integer. (optional)


          -serverStartupDelay milliseconds
             Specifies how long ORBD waits before sending a location forward
             exception after a persistent server that is registered via
             servertool is restarted. The default value is 1,000 ms. The value
             specified for milliseconds must be a valid positive integer.
             (optional)


          -Joption
             Pass option to the Java virtual machine, where option is one of
             the options described on the reference page for java(1). For
             example, -J-Xms48m sets the startup memory to 48 megabytes. It is
             a common convention for -J to pass options to the underlying vir-
             tual machine.




       Starting and Stopping the Naming Service

       A Naming Service is a CORBA service that allows CORBA objects @
       http://docs.oracle.com/javase/7/docs/technotes/guides/idl/jidlGlos-
       sary.html#CORBA%20object to be named by means of binding a name to an
       object reference. The name binding @
       http://docs.oracle.com/javase/7/docs/technotes/guides/idl/jidlGlos-
       sary.html#name%20binding 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 Naming Service will restore the nam-
       ing context graph, so that the binding 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 service 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, enter:

         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 @
       http://docs.oracle.com/javase/7/docs/technotes/guides/idl/jidlNam-
       ing.html.

Server Manager
       To access ORBD's Server Manager and run a persistent server, the server
       must be started using servertool(1), which is a command-line interface
       for application programmers to register, unregister, startup, and shut-
       down 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
       database for local contexts will be invalid and the service will not
       work properly.

   Server Manager: an Example
       Using the sample tutorial @
       http://docs.oracle.com/javase/7/docs/technotes/guides/idl/jidlExam-
       ple.html 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:

       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.

       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.

       The servertool command line interface appears.

       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, along with a listing of
       all registered servers.

       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.





       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
          o Naming Service @
            http://docs.oracle.com/javase/7/docs/technotes/guides/idl/jidlNam-
            ing.html

          o servertool(1)


                                  16 Mar 2012                          orbd(1)
