Initial References

Applications require means by which to obtain their initial object references. Using the initial object references the application can get to the ORB services and/or get hold of other object references (eg. factories) that are further needed by the application.

The initial objects can either be locality constrained (i.e. cannot be marshaled out-of-process) or be remote objects running over the network. In this section we will use the standard ORB APIs to list the names of the various initial references and determine which of these are remote objects. We will then describe the Bootstrap Protocol that the ORB uses to fetch these remote objects from the ORB daemon running on some host on the network. We will then introduce the Novell proprietary Initial References Service (IRS) API for locally setting initial object references and for getting initial references from an arbitrary server on the network.

The current release of the ORB also implements the latest Interoperable Name Service specification.

Listing Initial Services

This example shows how to query the ORB for initial references using the list_initial_services and resolve_initial_references methods on the ORB object. We will also see that some of these objects are locality constrained while the others are proper CORBA objects running somewhere on the network.

Interoperable Name Service URL Schemes

The ORB supports several URL schemes for naming objects. These include iioploc, iiopname, iiopboot, IOR, http, file, and ftp.

Bootstrap Protocol

The ORB uses the IIOP based bootstrap protocol from the Interoperable Name Service work going on at OMG to fetch remote initial object references. This section describes the protocol and also describes how the ORB implements it.

Initial References Service

Initial References Service (IRS) is a Novell proprietary (local) API for setting and getting initial references. It allows you to publish local objects, as well as objects that will be visible via the bootstrap protocol and the IIOP locate (iioploc) to others. It also allows you to get the InitialReferences object for arbitrary server running on the network so that you can list or get its initial references.

Hello World using IRS

In this example we will redo the Hello World example and publish object references to a NameService. We will use IRS to locate the NameService.



Copyright © 2003, 2004 Novell, Inc. All rights reserved. Copyright © 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved.