CORBA programming model
The CORBA programming model describes the artifacts that you develop and
implement to enable client applications to interact with server applications
in a CORBA environment. In this context, the word client refers to any program
that makes a remote method request on a servant object. The server, a server
process, hosts a servant object (in CORBA terminology) through which the client
accesses business functions. On a CORBA C++ server, the servant object implements
the business functions. On an EJB server, the business logic is implemented by
an enterprise bean.
The CORBA programming model, as a distributed-object programming model,
is characterized as follows:
- Objects
- CORBA objects are defined with the OMG Interface Definition
Language (IDL). IDL is compiled to generate client stubs and server skeletons,
which map an object's services from the server environment to the client.
- Communications protocol
- The specification is the General Inter-ORB
Protocol (GIOP). The Internet Inter-ORB Protocol (IIOP) is one implementation
of this specification. Together, these protocols specify the message formats
and data representations used between CORBA clients and servers.
- Object references
- CORBA Interoperable Object References (IOR)
provide a platform and vendor-independent object reference.
- Naming service
- The CORBA CosNaming service is located (bootstrapped)
with resolve_initial_references(). CosNaming binds a CORBA object to a public
name.
The following image shows the artifacts that you develop and implement
for the CORBA programming model:
CORBA programming model
The CORBA programming model comprises the following two interrelated parts:
- The server programming model describes the interfaces and processes used
to develop CORBA server objects that make up the business logic and business
data inherent in a server application. Application programmers use the server
programming model if they are developing CORBA server objects that perform
business functions used in the implementation of client objects. For more
information about the server programming model, see the topic "CORBA server
programming model".
- The client programming model describes how client applications use the
objects provided by server applications. Application programmers use the client
programming model if they are developing CORBA clients that access servant
implementations that are either CORBA server objects or enterprise beans.
For more information about the client programming model, see the topic "CORBA
C++ client programming model".
In WebSphere Application Server, the CORBA client, and server programming
models are used as follows:
- The CORBA client programming model is used for WebSphere C++ clients to
access a WebSphere EJB server.
- The CORBA client programming model also is used for WebSphere C++ clients
to access a WebSphere C++ server or another CORBA ORB acting as a CORBA server.
- The J2EE server programming model is used for WebSphere EJB servers.
- The CORBA server programming model is used for WebSphere C++ servers and
other CORBA servers.

CORBA concepts
CORBA C++ client programming model
CORBA server programming model
CORBA object services
CORBA communication protocols (GIOP/IIOP)
CORBA valuetype considerations

Implementing CORBA applications

CORBA internationalization considerations
Searchable topic ID:
ccor_ipgm00
Last updated: Jun 21, 2007 8:07:48 PM CDT
WebSphere Business Integration Server Foundation, Version 5.0.2
http://publib.boulder.ibm.com/infocenter/wasinfo/index.jsp?topic=/com.ibm.wasee.doc/info/ee/corba/concepts/ccor_ipgm00.html