This section describes some of the differences between
Java client programming with CORBA and regular, non-distributed Java
programming. This information should help you understand the more
complex elements of Java client programming for the IOM server because
the Java software for using the IOM server is based on CORBA standards.
CORBA is a set of standards
defined by the Object Management Group (OMG) computer industry consortium
that enables software objects to communicate with each other regardless
of the language that is used to write the objects and the communications
medium that is used to connect the objects. For more information,
see the
www.omg.org
Web site.
In the Java client environment, there are two important parts of
CORBA communication software: an object request broker (ORB) and stubs
for IOM objects. The stubs are Java classes that have methods that
correspond to the operations and attributes of a remote object. To
invoke an operation on a remote object, you instantiate the appropriate
stub and call the corresponding method. The stubs do not actually
implement the functionality of remote objects. Rather, when the stubs
receive a method call, they collect information about it (such as
the method name and parameters), repackage that information into a
request, and then forward the request through a Java ORB to the remote
server that hosts the remote object.
A Java ORB is
a library of Java classes that sends requests from a stub over a communications
medium (typically a TCP/IP network) to an object that implements the
method. The format of a request is specified in strict detail by the
CORBA standard, but the way that an ORB sends a request over a network
is not standardized. The CORBA standard does specify a protocol called
Internet Inter-ORB Protocol (IIOP) that ORBs must use if they are
to interoperate with other ORBs (perhaps created by other vendors).
In the most common CORBA applications, a stub calls into an IIOP ORB,
which communicates via IIOP with another IIOP ORB. The second ORB
calls out to an object that implements the desired functionality.
However, if interoperation with other ORBs is not a priority, then
protocols other than IIOP can be used to send requests across a network.
SAS
Integration Technologies features a Java ORB called the IOM Bridge
for Java that communicates with the IOM server through a proprietary
network protocol called IOM Bridge. Though the IOM Bridge for Java
does not use IIOP, it does conform to the CORBA standard for the format
of a request. SAS Integration Technologies also provides stubs for
all of the IOM objects that are included in the IOM object hierarchy.
The ORB and the stubs give you all you need to begin writing Java
programs that can access the IOM Server.
Our ORB, the IOM Bridge
for Java, is used internally by the Java Connection Factory and by
the stubs, so you rarely need to know any details about the operation
of the ORB or about its interface. However, the stubs collectively
provide the primary interface for exploiting the functionality of
the IOM server. Therefore, the Java programming information provided
in this section deals with the use of IOM object stubs.