Integrating Oracle Tuxedo Applications into a SOA Environment
By R A Sanyal on Mar 06, 2013
Oracle Tuxedo Oracle Tuxedo is the C/C++/COBOL application server of choice, running mission-critical applications in conventional and cloud deployments. It is deeply integrated with WebLogic Server enabling bi-directional transactional communication between Java applications and C/C++/COBOL applications.
Easy Integration into SOA environments
As one of the original SOA platforms, everything in Oracle Tuxedo is a service. Oracle Tuxedo services are location and implementation independent. They adhere to a contract, and are interoperable with other Oracle Tuxedo services and service oriented platforms. This makes integrating Oracle Tuxedo applications into a SOA environment natural and straightforward, regardless if the business logic is written in C, C++, Java, COBOL, Python, Ruby, or PHP.
Client Only and Server to Server Options
There are a number of integration techniques that can be used to integrate Oracle Tuxedo applications into a SOA world. The first decision to make when choosing an integration options is whether a Client Only option or a Server to Server option best fits your business needs.
Client Only Options
For environments where requests flow only from the client environment to Oracle Tuxedo, there are Client Only Options. The client’s transaction context is never extended to the Oracle Tuxedo system. Oracle Tuxedo transactions started by the client are delegated to Oracle Tuxedo and are separate from any transaction context in which the client may be participating.
Server to Server Options
For environments where Oracle Tuxedo is able to make calls to the non-Oracle Tuxedo system as well as receive calls, there are Server to Server integration options. Some of these options support distributed transactions and security context propagation.
Oracle Tuxedo provides the following Java integration options.
- Oracle WebLogic Tuxedo Connector (WTC), a standard component of Oracle WebLogic Server, provides bi-directional service invocations to and from Oracle Tuxedo and Oracle WebLogic Server within context of global, XA transactions. Using WTC, based on Tuxedo domains, Tuxedo applications can invoke JEE applications running on WebLogic and vice-versa. With its integrated JMS bridge, JMS Messages can flow to/from Oracle Tuxedo /Q queues and vice-versa.
- Oracle Tuxedo JCA Adapter provides similar capabilities as WTC, but for all JEE application servers. It allows bi-directional, transactional interactions between JEE applications and Oracle Tuxedo applications.
- Native Java Support available in the Oracle Tuxedo 12c release means services can be implemented in Java as plain old Java objects or POJOs. Developers can use JATMI to develop Oracle Tuxedo services in Java and leverage Oracle’s scalable, highly available infrastructure to create or extend their enterprise to class SOA applications.
- Jolt provides access to Oracle Tuxedo services from essentially any Java environment
ranging from stand alone Java applications, applets running inside a browser, to clients running inside a JEE application server. It provides a simple set of Java classes that support Oracle Tuxedo client facilities such as invoking services, enqueuing and dequeuing messages to Oracle Tuxedo /Q queues, and subscribing to Oracle Tuxedo Event Broker for publish and subscribe interactions.
Web Services Integration
The Oracle Services Architecture Leveraging Tuxedo (SALT) provides bi-directional SOAP/HTTP support for Oracle Tuxedo applications. This product is completely configuration driven, meaning that no coding is necessary to access remote web services or to allow remote applications to access Oracle Tuxedo services as web services.
SALT provides a high performance point to point integration mechanism using open standards. It is an ideal solution for customers standardizing on SOAP/HTTP as their protocol of choice for integrating applications. SALT supports most of the common web services standards including SOAP 1.1 and 1.2, SOAP with attachments, MTOM, WSDL 1.1, WS-Policy, WS-Addressing, WS-ReliableMessaging, WS-Security 1.0 and 1.1, WS-Coordination, and WS-AtomicTransaction 1.0. This allows integration with most other web services platforms including Oracle WebLogic Server, Axis for Java 2.0, Microsoft .NET framework 3.0, Oracle Service Bus, and Oracle BPEL, as well as most other popular SOAP/HTTP offerings.
Oracle Tuxedo includes support of a .NET client library that can be used to access Oracle Tuxedo services from a .NET application. Like Jolt, the .NET client is a client only offering so .NET application can invoke Oracle Tuxedo services, but Oracle Tuxedo cannot invoke .NET applications.
WebSphere MQ Integration
Oracle Tuxedo ships with a bi-directional MQ adaptor that allows messages placed on MQ queues to be delivered to an Oracle Tuxedo service and the reply from the Oracle Tuxedo service to be placed on the output MQ Queue. Applications needing staged transactional delivery of requests can use standard Oracle Tuxedo distributed transaction management to ensure exactly once processing of messages.
Mainframe Services Integration
The Oracle Tuxedo Mainframe Adapter (TMA) provides an excellent foundation for integrating legacy mainframe systems, such as IBM CICS and IMS/TM, into a modern SOA environment. With TMA, mainframe applications see Tuxedo services as though they were local and Tuxedo services see mainframe applications services as local services. allow the sharing of services between Oracle Tuxedo and the mainframe systems.
Like other integration options built on Oracle Tuxedo’s domains technology, TMA supports identity propagation and support distributed transactions.
Service Bus Integration
Oracle Service Bus (OSB) is an enterprise service bus that supports the integration, mediation, and monitoring of a variety of types of services. For each type of service supported by OSB a transport is used to handle the connection and interfacing to the specifics of the service. OSB also has a built-in transport for Oracle Tuxedo. The Oracle Tuxedo transport supports Oracle Tuxedo based business services that can be accessed from any OSB proxy as well as Oracle Tuxedo proxy services which allow Oracle Tuxedo applications to call services mediated by OSB.
Oracle Tuxedo provides many ways to connect with other SOA platforms and environments. For more detailed information about each of the integration choices, download the white paper, Oracle Tuxedo in a SOA World.
Follow Cloud Application Foundation (CAF):