Skip navigation.
Downloads | Product Documentation | Support

Programming Stand-alone Clients

# Developing a WebLogic C++ Client for a Tuxedo ORB

The WebLogic C++ client uses the Tuxedo 8.1 or higher C++ Client ORB to generate IIOP requests for EJBs running on WebLogic Server. This client supports object-by-value and the CORBA Interoperable Naming Service (INS). The following sections provides information on developing WebLogic C++ clients for the Tuxedo ORB:

- WebLogic C++ Client Advantages and Limitations
- How the WebLogic C++ Client Works
- Developing WebLogic C++ Clients
- Developing WebLogic C++ Clients

# WebLogic C++ Client Advantages and Limitations

A WebLogic C++ client offers these advantages:

- Simplifies your development process by avoiding third-party products
- Provides a client-side solution that allows you to develop or modify existing C++ clients

Although the Tuxedo C++ Client ORB is packaged with Tuxedo 8.1 and higher, you do not need a Tuxedo license to develop WebLogic C++ clients. You can obtain a trial development copy of Tuxedo from the BEA Download Center.

The WebLogic C++ client has the following limitations:

- Provides security through the WebLogic Server Security service.
- Provides only server-side transaction demarcation.

# How the WebLogic C++ Client Works

The WebLogic C++ client processes requests as follows:

- The WebLogic C++ client code requests a WebLogic Server service.

- The Tuxedo ORB generates an IIOP request.
- The ORB object is initally instantiated and supports Object-by-Value data types.

- The client uses the CORBA Interoperable Name Service (INS) to look up the EJB object bound to the JNDI naming service. For more information on how to use the Interoperable Naming Service to get object references to initial objects such as NameService, see Interoperable Naming Service Bootstrapping Mechanism.

Figure 10-1 WebLogic C++ Client to WebLogic Server Interoperability

# Developing WebLogic C++ Clients

Use the following steps to develop a C++ client:

1. Use the `ejbc` compiler with the `-idl` option to compile the EJB with which your C++ client will interoperate. This action generates an IDL script for the EJB.
2. Use the C++ IDL compiler to compile the IDL script and generate the CORBA client stubs, server skeletons, and header files. For information on the use of the C++ IDL Compiler, see OMG IDL Syntax and the C++ IDL Compiler.
3. Discard the server skeletons; the EJB represents the server side implementation.
4. Create a C++ client that implements an EJB as a CORBA object. For general information on how to create CORBA client applications, see Creating CORBA Client Applications.
5. Use the Tuxedo `buildobjclient` command to build the client.