1 Introduction to Oracle WebLogic Tuxedo Connector Programming

This chapter provides information about the development environment you will be using to write code for applications that interoperate between Oracle WebLogic Server and Oracle Tuxedo.

This chapter includes the following sections:

Guide to this Document

This document introduces the Oracle WebLogic Tuxedo Connector application development environment. It describes how to develop EJBs that allow Oracle WebLogic Server to interoperate with Oracle Tuxedo objects.

The document is organized as follows:

Developing Oracle WebLogic Tuxedo Connector Applications

Note:

See Javadocs for WebLogic Classes for more information on the Oracle WebLogic Tuxedo Connector JATMI. The Oracle WebLogic Tuxedo Connector classes are located in the weblogic.wtc.jatmi and weblogic.wtc.gwt packages.

In addition to the Java code that expresses the logic of your application, you will be using the Java Application -to-Transaction Monitor Interface (JATMI) to provide the interface between Oracle WebLogic Server and Oracle Tuxedo.

Developing Oracle WebLogic Tuxedo Connector Clients

A client process takes user input and sends a service request to a server process that offers the requested service. Oracle WebLogic Tuxedo Connector JATMI client classes are used to create clients that access services found in Oracle Tuxedo. These client classes are available to any service that is made available through a the Oracle WebLogic Tuxedo Connector WTCServer MBean.

Developing Oracle WebLogic Tuxedo Connector Servers

Servers are processes that provide one or more services. They continually check their message queue for service requests and dispatch them to the appropriate service subroutines. Oracle WebLogic Tuxedo Connector uses EJBs to implement services which Oracle Tuxedo clients invoke.

Oracle WebLogic Tuxedo Connector Interoperability with Oracle Tuxedo CORBA objects

The Oracle WebLogic Tuxedo Connector provides bi-directional interoperability between Oracle WebLogic Server and Oracle Tuxedo CORBA objects. The Oracle WebLogic Tuxedo Connector:

  • Enables Oracle Tuxedo CORBA objects to invoke upon EJBs deployed in Oracle WebLogic Server using the RMI/IIOP API (Inbound).

  • Enables objects (such as EJBs or RMI objects) to invoke upon CORBA objects deployed in Oracle Tuxedo using the RMI/IIOP API (Outbound).

  • Enables objects (such as EJBs or RMI objects) to invoke upon CORBA objects deployed in Oracle Tuxedo using a CORBA Java API (Outbound).

Oracle WebLogic Tuxedo Connector JATMI Primitives

The JATMI is a set of primitives used to begin and end transactions, allocate and free buffers, and provide the communication between clients and servers.

Table 1-1 JATMI Primitives

Name Operation

tpacall

Use for asynchronous invocations of an Oracle Tuxedo service during request/response communication.tpacall has two forms:

  • deferred synchronous

  • asynchronous

tpacall

Use for synchronous invocation of an Oracle Tuxedo service during request/response communication.

tpconnect

Use to establish a connection to an Oracle Tuxedo conversational service.

tpdiscon

Use to abort a conversational connection and generate a TPEV_DISCONIMM event when executed by the process controlling the conversation.

tpdequeue

Use for receiving messages from an Oracle Tuxedo /Q during request/response communication.

tpenqueue

Use for placing a message on an Oracle Tuxedo /Q during request/response communication.

tpgetrply

Use for retrieving replies from an Oracle Tuxedo service during request/response communication.

tprecv

Use to receive data across an open connection from an Oracle Tuxedo application during conversational communication.

tpsend

Use to send data across a open connection to an Oracle Tuxedo application during conversational communication.

tpterm

Use to close a connection to an Oracle Tuxedo object.

Oracle WebLogic Tuxedo Connector TypedBuffers

Oracle WebLogic Tuxedo Connector provides an interface called TypedBuffers that corresponds to Oracle Tuxedo typed buffers. Messages are passed to servers in typed buffers. The Oracle WebLogic Tuxedo Connector provides the following buffer types:

Table 1-2 TypedBuffers

Buffer Type Description

TypedString

Buffer type used when the data is an array of characters that terminates with the null character. Oracle Tuxedo equivalent: STRING.

TypedCArray

Buffer type used when the data is an undefined array of characters (byte array), any of which can be null. Oracle Tuxedo equivalent: CARRAY.

TypedFML

Buffer type used when the data is self-defined. Each data field carries its own identifier, an occurrence number, and possibly a length indicator. Oracle Tuxedo equivalent: FML.

TypedFML32

Buffer type similar to TypeFML but allows for larger character fields, more fields, and larger overall buffers. Oracle Tuxedo equivalent: FML32.

TypedXML

Buffer type used when data is an XML based message. Oracle Tuxedo equivalent: XML for Tuxedo Release 7.1 and higher.

TypedView

Buffer type used when the application uses a Java structure to define the buffer structure using a view description file. Oracle Tuxedo equivalent: VIEW.

TypedView32

Buffer type similar to View but allows for larger character fields, more fields, and larger overall buffers. Oracle Tuxedo equivalent: VIEW32.

TypedMBString

Buffer type used when the data is a wide array of characters to support multi-byte characters. Oracle Tuxedo equivalent: MBSTRING.

New and Changed WTC Features for this Release

See What's New in Oracle WebLogic Server 12.2.1.3.0 for a comprehensive listing of the new WebLogic Server features introduced in this release.