[Enterprise Extensions only]

The 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 running in a process on a client or server computer. The server, a server process, hosts a servant object (in CORBA 2.3 terminology) through which the client accesses business functions. In a C++ CORBA server, the servant object implements the business functions; in an EJB server, the business logic is implemented by an Enterprise JavaBean.

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), of which the Interoperable Inter-ORB Protocol (IIOP) is one implementation.
Object references
CORBA Interoperable Object References (IOR) provide a platform and vendor independent object reference.
Naming service
The CORBA CosNaming service is bootstrapped with resolve_initial_references(). CosNaming binds a CORBA object to a public name.

The CORBA programming model shows the artifacts that you develop and implement for the CORBA programming model.


The CORBA programming model, showing artifacts that are developed and implemented

The CORBA programming model

The CORBA programming model comprises the following two interrelated parts:

In WebSphere Application Server enterprise services, the CORBA client and server programming models are used as follows: