Modernization with IBM WebSphere eXtended Transaction Runtime
IBM Redbooks Solution Guide
Published 13 November 2012
Other Language Versions
Note: Other language versions may not be as current as the English edition.
Authors: Jeff Cox
IBM® WebSphere® eXtended Transaction Runtime (WXTR) is a distributed online transaction processing (OLTP) environment to host COBOL and C applications with IBM WebSphere Application Server on AIX®. It enables modernization and extension of business applications that are written in COBOL and C into a Java Enterprise Edition (Java EE) environment and helps to realize the benefits of a tightly integrated managed environment. WXTR provides basic runtime connectivity between Java EE applications and COBOL and C applications, which eases the integration required for composite applications in an enterprise environment. Through tight integration with the system management capability of WebSphere Application Server, you can achieve easy deployment, administration, and optimization of services, increasing administration efficiency for managing mixed language transactional applications.
Implementing WXTR can provide several benefits as illustrated by the scenarios in this IBM Redbooks® Solution Guide.
IBM® WebSphere® eXtended Transaction Runtime (WXTR) is a distributed online transaction processing (OLTP) environment to host COBOL and C applications with IBM WebSphere Application Server on AIX®. It enables modernization and extension of business applications that are written in COBOL and C into a Java Enterprise Edition (Java EE) environment and helps to realize the benefits of a tightly integrated managed environment. WXTR provides basic runtime connectivity between Java EE applications and COBOL and C applications, which eases the integration required for composite applications in an enterprise environment. Through tight integration with the system management capability of WebSphere Application Server, you can achieve easy deployment, administration, and optimization of services, increasing administration efficiency for managing mixed language transactional applications. Figure 1 summarizes the benefits of WXTR.
Figure 1. Benefits of WXTR
Did you know?
Many clients have invested much time and effort in the development of business logic in COBOL and C applications. They realize that the value of those applications can be unlocked and extended by using Java EE. By establishing WebSphere eXtended Transaction Runtime as a core component of an enterprise IT architecture, alongside WebSphere Application Server, an organization can have a highly responsive, tightly integrated composite application-serving infrastructure for modern COBOL, C, and Java workloads. This solution provides the ability to effectively optimize and modernize these COBOL and C assets, in addition to capitalizing on enterprise-wide skills to consolidate IT infrastructure around WebSphere Application Server as the core hosting server in a distributed environment.
The major benefits of a WebSphere eXtended Transaction Runtime solution are in two broad areas:
- A tightly integrated managed environment
- Integrated application development
WXTR includes functions that together provide a tightly integrated, managed environment to host Java, C, and COBOL applications, particularly applications based on IBM CICS®, under the same WebSphere Application Server instance, effectively allowing them to be treated as a single application. For example, a Java application that is in WebSphere Application Server can access a C or COBOL application in WXTR as an extension of a Java application or as a web service. WXTR provides support for CICS data management facilities such as files and queues stored in an IBM DB2® database. In addition, WXTR provides a common administration facility to manage both COBOL and C assets and Java EE assets within the WebSphere Application Server administration console. As a benefit, administration personnel have a reduced learning curve and can easily and efficiently deploy, administer, and optimize services.
IBM Rational® Developer for Power Systems™, with WXTR, provides a modern application development experience across Java EE applications and COBOL and C applications. Developers can use it to perform operations such as developing, deploying, and debugging applications within a single integrated development environment (IDE), improving productivity.
Deployment of WXTR with WebSphere Application Server provides enterprise-class scalability to composite applications. With WXTR and WebSphere Application Server as the core of a serving infrastructure, existing assets can be retained and extended in a modern, hybrid application environment.
WebSphere eXtended Transaction Runtime provides an execution environment for hosting COBOL and C business applications within IBM WebSphere Application Server. It offers a tightly integrated and managed environment for hosting Java EE applications and modern COBOL and C applications with interoperability between the workloads of each application. WXTR provides basic runtime connectivity with standard interfaces between Java EE applications and COBOL and C applications, which significantly eases integration in an enterprise environment. Java applications can connect and invoke C or COBOL applications through standard connection interfaces that are based on Java EE Connector Architecture (JCA) or Service Component Architecture (SCA). WXTR also offers a unique system management capability that is tightly integrated with WebSphere Application Server. This feature enables easy deployment, administration, and optimization of services. It also significantly increases efficiency for managing mixed-language transactional applications.
As an extension to WebSphere Application Server, WXTR provides a unified environment to host, manage, and maintain composite transactional applications that consist of COBOL, C, and Java components. Even composite applications with two-phase commit transactions and mixed-language components can be easily deployed and maintained within WXTR and WebSphere Application Server. Security context, transaction context, and data can be seamlessly shared across the composite applications for improved architectural flexibility.
Deployment of WXTR with WebSphere Application Server provides enterprise-class scalability to composite applications. With WXTR and WebSphere Application Server as the core of a serving infrastructure, existing assets can be retained and extended in a modern, hybrid application environment (Figure 2).
Figure 2. Hybrid application environment
As shown in Figure 3, the two major components, which are the run times for WebSphere Application Server and WebSphere eXtended Transaction Runtime, exist separately but are joined with an adapter. The WebSphere run time runs on a Java virtual machine (JVM), where the WXTR run time is a collection of native operating system processes. The WXTR run time runs COBOL and C applications, and the WebSphere run time runs Java EE applications.
Figure 3. WXTR architecture, which is a tightly integrated, managed environment for Java and COBOL applications
Both run times run on the AIX platform. The WXTR run time needs to connect to a DB2 database or Oracle database that can reside in the same machine as WXTR or in a remote machine.
The different functions that WXTR supports can be classified into the following categories:
- Tightly integrated managed environment
WXTR includes functions that, together, provide a tightly integrated, managed environment to host Java, C, and COBOL applications under the same WebSphere Application Server instance. A Java application that is in WebSphere Application Server can access a C or COBOL application in WXTR by using the JCA interface or the SCA interface. Application errors that arise within the C or COBOL executable are propagated to the Java application as Java exceptions and are handled accordingly. User data is passed among Java, C, and COBOL applications by using COMMAREA in a character format. Popular IDEs, such as Rational Developer for Power Systems, provide a binding feature to simplify this mapping process.
- Data management
WXTR provides support for CICS data management facilities such as files and queues that are stored in a DB2 database. It supports record-level locking on fixed-length and variable-length records, and allows Virtual Storage Access Method (VSAM)-style access to the data that is stored in DB2. WXTR also supports temporary storage and transient data queues. The temporary storage queues are for shared reading, writing, and updating of data by multiple transactions. The transient data queue service provides a generalized queuing facility for internal or external processing. Selected data that is specified in the application program can be routed to or from predefined symbolic destinations. These extra partition destinations are queues that can reside on any system resource and can be accessed by programs within and across regions. Any system file can be processed sequentially with WXTR transient data.
- Unified system administration
WXTR works in a two-in-one mode by using a highly optimized local adapter. The WebSphere run time handles the Java EE applications, and the WXTR run time handles the COBOL and C applications. With the unified system administration, the COBOL and Java EE assets can be managed within the WebSphere Application Server administrative console. This feature reduces the learning curve for administrative personnel and allows them to easily and efficiently deploy, administer, and optimize services. Administrators can view and modify the WXTR service properties by using the WXTR administration panel in the WebSphere administrative console or by using WebSphere administration scripts. The unified administration allows for the creation of user groups with predefined privileges to run certain administrative tasks, reducing the dependence on administrative personnel and improving overall productivity. WXTR also enables nonroot users to perform a predefined set of administrative tasks without having root user privileges.
- Integrated application development and debugging
Rational Developer for Power Systems, with WXTR, can provide a productive application development experience across Java EE and COBOL applications. By using this combination, you can develop, deploy, and debug applications within a single IDE to improve productivity. Application developers can step into and inspect a COBOL program from a Java EE application. Similarly, data exchange between COBOL and Java EE applications can be achieved by using the IBM CICS IMS™ Java Data Binding feature of Rational Application Developer.
A WebSphere eXtended Transaction Runtime solution is realized in various deployment scenarios (illustrated in Figure 4) and is supported by tooling options to assist with these deployment configurations.
Figure 4. Types of WXTR workloads
WXTR is suitable for the following cases:
- Existing distributed COBOL and C workloads
By using WXTR, customers can retain their existing COBOL and C assets when they consolidate the infrastructure around WebSphere Application Server. The assets can be brought into an enterprise service-oriented architecture (SOA) environment by using the JCA or SCA interfaces in WXTR. The assets can then connect through an enterprise service bus to interoperate with workloads in WebSphere Process Server, WebSphere MQ, WebSphere Message Broker, or any other product that supports native MQ transport.
- Transaction processing workloads (COBOL and C) that are not from IBM
By using WXTR, customers who are currently running transaction processing solutions (not from IBM) can modernize their COBOL and C assets and center their future IT infrastructure around WebSphere Application Server, creating an agile, flexible, SOA-centric application infrastructure.
- Existing COBOL and C workloads running on IBM TXSeries
Existing TXSeries customers who have COBOL or C workloads extended to WebSphere Application Server can benefit from the tighter connectivity of Java workloads within WXTR. This feature enables smoother and easier integration of COBOL and C assets into the SOA environment and improved management of mixed-language applications. The unified system management between WXTR and WebSphere Application Server makes it easy for administrators to deploy, administer, and manage COBOL and C assets within WebSphere Application Server, resulting in improved efficiency.
- IBM System z® workloads that are moving to distributed platforms
CICS Transaction Server and WebSphere Application Server for IBM z/OS® are the premium hosting environments for modern COBOL and C applications that are extended to Java EE. For customers who do not require the benefits of the System z platform and who want to continue investing in application modernization, WXTR provides a distributed alternative.
WebSphere eXtended Transaction Runtime can be deployed across one or more servers to meet business and user expectations. Because WXTR exists as a container in WebSphere Application Server, its deployment patterns depend on how WebSphere Application Server is deployed. WebSphere Application Server, in turn, supports many deployments, from a single, stand-alone server to more complex deployments that consist of clusters of application servers that are spread across physical systems.
A WXTR deployment with a single individual (or stand-alone) WebSphere Application Server (Figure 5) can be created by using any WebSphere Application Server product that is supported by WXTR. This configuration is commonly set up as a development or test environment.
Figure 5. Single (or stand-alone) server topology
A more typical business deployment consists of multiple application servers that are managed under a single deployment manager as shown in Figure 6. The application servers can be grouped on the same system (vertically clustered) or across different systems (horizontally clustered). Managing a group of servers under one deployment manager requires WebSphere Application Server Network Deployment.
Figure 6. Horizontal cluster topology
Application interfacing scenarios
WebSphere eXtended Transaction Runtime supports the following interfacing scenarios:
- Execution of C or COBOL applications as extensions of Java EE applications by using JCA
- WXTR provides JCA Common Client Interface (CCI) APIs to interact with CICS COBOL programs and data from Java EE programs. Java application developers can use the WXTR-supplied com.ibm.wxtr and com.ibm.wxtr.utils packages to create connections to and interact with CICS C or COBOL applications. Figure 7 shows an example of interfacing with a COBOL application.
Figure 7. JCA interface for Java applications
- Execution of C or COBOL applications as web services by using SCA
- SCA provides a model for creating applications that follow SOA principles. WXTR exposes an SCA service, called WXTRService, with an SCA component, called WXTRService Component. Figure 8 illustrates an example of invoking a COBOL program that is deployed in WXTR.
Figure 8. SCA interface for Java applications
WebSphere eXtended Transaction Runtime works with the following IBM products to provide and enhance the application modernization process:
- WebSphere Application Server and WebSphere Application Server Network Deployment
WXTR is compatible with and extends either one of these application server options.
- Rational Developer for Power Systems
Rational Developer for Power Systems provides a modern IDE on which COBOL and C applications can be developed. WXTR provides Java code templates for calling COBOL and C programs. It also provides makefile templates for building COBOL and C programs (CICS style) in Rational Developer for Power Systems. Also, you can use Rational Developer for Power Systems to debug Java EE applications, even as far as stepping into a COBOL program to provide an end-to-end debugging experience. COBOL and C applications developed in Rational Developer for Power Systems are automatically deployed to WXTR, similar to how Java EE applications are deployed automatically to WebSphere Application Server from Rational Application Developer or Rational Developer for Power Systems.
- Rational Application Developer
The Rational Application Developer IDE provides the Importer component from the CICS IMS Java Data Binding feature that enables application developers to share mixed-type data across Java EE and COBOL or C environments. By using the Importer, you can import existing COBOL or C programs and generate metadata information about data structures (such as a COMMAREA in a CICS COBOL or C program) to the Java data binding tool through a process of data type transformation. The Importer maps data types in source files to a corresponding data type that can be accessed in a Java application, which provides a convenient and easy way to transfer data between Java EE and COBOL or C applications.
- WebSphere eXtended Transaction Runtime Feature Pack for modernizing Oracle Tuxedo Applications
This feature pack allows for the migration of Oracle WebLogic COBOL and C applications to WebSphere Application Server to be hosted natively by using WXTR, with minimal changes. The provided runtime environment provides a mapping of functionality between Tuxedo and WXTR, simplifying application migration. The Migration Assist tool, which is also provided, aids in simplifying the entire process of migration, including application profiling to identify sections that might benefit from changes and application deployment.
- WebSphere Application Server Migration Toolkit
This suite of tools is packaged as a feature (a collection of plug-ins) that can be installed in IBM Rational Application Developer, IBM Rational Software Architect, or Eclipse IDE, which simplifies the process of migrating to WebSphere Application Server V7 or V8 from a previous version of WebSphere Application Server or from other application servers such as Oracle WebLogic Server, Oracle Application Server, and JBOSS Application Server. These tools analyze code to identify application elements that should be updated to ensure optimal compatibility and performance.
WXTR provides support for files and queues that are stored in a DB2 database. It also allows VSAM style access to stored data.
- COBOL for AIX, which is required for COBOL applications
WebSphere eXtended Transaction Runtime is compatible with any IBM System p® hardware that can run IBM AIX V6.1 or V7.1.
The WebSphere eXtended Transaction Runtime product is available only through IBM Passport Advantage®. It is not available for shrink wrap.
- License function title: IBM WebSphere eXtended Transaction Runtime
- Product group: IBM Transaction Server
- Product category: Transaction Server
Table 1 provides ordering information for WTXR.
Table1. Ordering part numbers and feature codes
|Program name||PID number||Charge unit description|
|IBM WebSphere eXtended Transaction Runtime||5725-C89||Per Processor Value Unit|
|IBM WebSphere eXtended Transaction Runtime||5725-C89||Per Processor Value Unit for zEnterprise® BladeCenter® Extension|
For more information, see the following documents:
- IBM WebSphere eXtended Transaction Runtime Sales Manual
- IBM WebSphere eXtended Transaction Runtime V2.1 Announcement letter
- WebSphere eXtended Transaction Runtime product page
- IBM WebSphere eXtended Transaction Runtime V2.1 Download Document
- Modernization with IBM WebSphere eXtended Transaction Runtime, REDP-4818
Others who read this publication also read
This material has not been submitted to any formal IBM test and is published AS IS. It has not been the subject of rigorous review. IBM assumes no responsibility for its accuracy or completeness. The use of this information or the implementation of any of these techniques is a client responsibility and depends upon the client's ability to evaluate and integrate them into the client's operational environment.
Follow IBM Redbooks
Follow IBM Redbooks