8 Oracle Jolt 22c Release Overview and Installation Information

The following sections provide an overview of Oracle Jolt 22c Release and present the prerequisites and preparatory information for installing the Oracle Jolt 22c Release software components:

8.1 About Oracle Jolt

Oracle Jolt is a Java class library and API that enables remote Java clients to access existing Oracle Tuxedo ATMI services. As shown in the following figure, Oracle Jolt extends the functionality of existing Tuxedo ATMI applications to include intranet- and Internet-wide availability.

Figure 8-1 Oracle Jolt Communication Architecture Using the Jolt Applet

Oracle Jolt Communication Architecture

The preceding figure shows one of five types of Jolt client personalities supported by Oracle Jolt, all of which are briefly described in Oracle Jolt Client Personalities.

8.2 Oracle Jolt Components

Oracle Jolt consists of the following components for enabling secure, reliable access to servers inside corporate firewalls, and for creating Java-based client programs that access Tuxedo ATMI services:

As shown in the following figure, the Jolt server implementation consists of one or more Jolt Server Handlers, one or more Jolt Server Listeners, and one and only one Metadata Repository Server, all running on the same Oracle Tuxedo server machine.

Figure 8-2 Oracle Jolt Server Implementation

Oracle Jolt Server Implementation

A Jolt server listens for network connections from Jolt clients, translates Jolt messages, multiplexes multiple Jolt clients into a single process, and submits and retrieves requests to and from a Tuxedo ATMI application. As with all Tuxedo system executables, the Jolt server components reside in the tux_prod_dir/bin directory, where tux_prod_dir represents the directory in which the Oracle Tuxedo 22c Release 1 (22.1.0.0.0) Oracle distribution is installed.

8.3 Jolt Server Listener

A Jolt Server Listener (JSL) is a listening process, running on the Tuxedo server, that accepts connection requests from Jolt clients and assigns connections to a Jolt Server Handler also running on the Tuxedo server. It also manages the pool of Jolt Server Handler processes, starting them in response to load demands.

8.4 Jolt Server Handler

A Jolt Server Handler (JSH) is a gateway process, running on the Tuxedo server, that handles communications between Jolt clients and the Tuxedo ATMI server application. A JSH process resides within the administrative domain of the application and is registered in the local Tuxedo bulletin board as a client. Each JSH process can manage multiple Jolt clients. A JSH multiplexes all requests and replies with a particular Jolt client over a single connection.

8.5 Metadata Repository Server

TMMETADATA server retrieves Jolt service definitions from the Tuxedo Service Metadata Repository and returns the service definitions to the JSH. The TMMETADATA server also updates or adds Jolt service definitions.

8.6 Metadata Repository

The Metadata Repository, located on the Tuxedo server, is a central repository that contains definitions of Tuxedo ATMI services. These repository definitions are used by Jolt at run time to access Tuxedo services. You can export services to a Jolt client application or unexport services by hiding the definitions from the Jolt client. Using the Oracle Tuxedo Services Console, you can test new and existing Tuxedo services independently of the client applications.

8.7 Jolt Internet Relay

Jolt Internet Relay routes messages from a Jolt client to a Jolt Server Listener (JSL) or Jolt Server Handler (JSH). It eliminates the need for the JSL, JSH, and Tuxedo application to run on the same machine as the Web server. The Jolt Internet Relay consists of the following components:
Jolt Relay (JRLY)
A standalone program that routes Jolt messages from Jolt clients to the JSL or JSH via the Jolt Relay Adapter (JRAD). Jolt Relay is not a Tuxedo system server or client process, and it is not dependent on the Oracle Tuxedo system software version.
Jolt Relay Adapter (JRAD)
A Tuxedo system server that operates as a back-end relay for Jolt Relay. The JRAD may or may not be located on the same Tuxedo host machine and server group to which the JSL server is connected.

The following image illustrates the Jolt Internet Relay connection path

Figure 8-3 Oracle Jolt Internet Relay Connection Path

Oracle Jolt Internet Relay Connection Path

A Jolt server can connect directly to intranet Jolt clients and can connect indirectly to Internet Jolt clients through the Jolt Internet Relay, all at the same time. Jolt Internet Relay is transparent to Jolt servers and Jolt clients.

The JRLY executable (jrly) resides in tux_prod_dir/udataobj/jolt/relay and tux_prod_dir/bin directories.

8.8 Jolt Class Library

The Jolt class library consists of Java class files that implement the Jolt API. These classes enable Java clients to invoke Oracle Tuxedo ATMI services. The Jolt class library provides functions to set, retrieve, manage, and invoke communication attributes, notifications, network connections, transactions, and services.

The Jolt class library files reside in the tux_prod_dir/udataobj/jolt directory and are stored in the following JAR files:

  • jolt.jar
  • joltadmin.jar
  • joltatm.jar
  • JoltBeanDev.jar
  • JoltBeanRt.jar
  • JoltBeanDevAwt.jar
  • JoltBeanRtAwt.jar
  • JoltBeanDevSwing.jar
  • JoltBeanRtSwing.jar
  • JoltBeanDevSwing11.jar
  • JoltBeanRtSwing11.jar
  • joltjse.jar
  • joltwls.jar

To view the contents of a Jolt JAR file, ensure that the path to the JDK 1.8.x (or higher) software is included at the front of your PATH variable, go to the tux_prod_dir/udataobj/jolt directory, and enter the following command:

prompt> jar -tvf filename.jar

Example

prompt> jar -tvf jolt.jar
  7472 Fri Sep 09 17:16:40 EDT 2022 META-INF/MANIFEST.MF
  7518 Fri Sep 09 17:16:42 EDT 2022 META-INF/ORACLE_C.SF
 11546 Fri Sep 09 17:16:42 EDT 2022 META-INF/ORACLE_C.RSA
     0 Sat Sep 10 00:16:22 EDT 2022 META-INF/
   547 Sat Sep 10 00:16:22 EDT 2022 bea/jolt/ApplicationException.class
   786 Sat Sep 10 00:16:22 EDT 2022 bea/jolt/BData.class
   991 Sat Sep 10 00:16:22 EDT 2022 bea/jolt/ByteArrayUtil.class
. 
. 
.

8.9 JoltBeans

JoltBeans provides a JavaBeans-compliant interface to Oracle Jolt. JoltBeans are Bean components that can be used in JavaBeans-enabled integrated development environments (IDEs) to construct Jolt clients.

JoltBeans consists of two sets of Java Beans: JoltBeans toolkit (a JavaBeans-compliant interface to Oracle Jolt that includes the JoltServiceBean, JoltSessionBean, and JoltUserEventBean) and Jolt GUI beans, which consist of Jolt-aware Abstract Window Toolkit (AWT) and Swing-based beans. The separation of Oracle Jolt into these components permits the transactional and Internet components of client/server applications to be implemented separately with the security and scalability required for large-scale Internet and intranet services.

8.10 Jolt ECID

Jolt call process is as follows: JOLT client --> JSL/JSH --> tuxedo server --> service
  1. Jolt Connection Pool supports ECID propagation between Weblogic and Oracle Tuxedo. ECID is propagated and inserted into a request message if java option -Dtuxedo.ECID_ENABLE or environment variable ECID_ENABLE is set to y'. Java option -Dtuxedo.ECID_ENABLE has higher priority than environment variable ECID_ENABLE. ECID also can be sent back within a reply message from Oracle Tuxedo.
  2. ECID relies on DMS (Dynamic Monitoring Service), ECID is not supported for standalone jolt client by default. If you want ECID to be created, DMS should be installed first.
  3. Jolt ECID does not impact JRLY and JRAD. The format for ECID in jolt client trace is as follows:
     000915:30475@slc05are:1: ECID <0000KqPMc659XbHpIsT4if1LPfwR000001>: atmi: { JoltSession.send(len 132)

8.11 Oracle Jolt Client Personalities

In addition to using Oracle Jolt to build client applets and applications that remotely invoke existing and new Tuxedo applications, Java programmers can use Oracle Jolt to build HTTP servlets to perform server-side Java tasks in response to HTTP requests. This latter type of Jolt connectivity enables simple Web clients to access Tuxedo application services through any Web application server that supports generic servlets.

Oracle Jolt supports the following types of Java client personalities:

  • Jolt applet—a downloadable Java interactive program, running in a Web browser environment, that uses the Jolt classes to invoke Tuxedo services from within a Web page. Accessing Tuxedo ATMI services in this manner requires the downloading and installation of Jolt class package jolt.jar (and possibly other Jolt class packages exceptjoltjse.jar, and joltwls.jar on the machine running the Jolt applet.
  • Jolt application—a standalone Java client, running on the Java Virtual Machine and operating system of a client machine, that uses the Jolt classes to invoke Tuxedo services. Accessing Tuxedo ATMI services in this manner requires the installation of Jolt class packagejolt.jar (and possibly joltadmin.jar) on the machine running the Jolt application.
  • JSE Connectivity for Oracle Tuxedo—a Jolt HTTP servlet, running in a Java Web application server environment (for example, Oracle WebLogic Server), through which simple Web-browser clients can invoke Tuxedo ATMI services. Accessing Tuxedo ATMI services in this manner requires the installation of Jolt class packages jolt.jar and joltjse.jar on the machine running the Web application server.

    A Jolt HTTP servlet uses Jolt session pool classes to invoke Tuxedo services on behalf of simple browser clients. Thus, the servlet handles all Jolt transactions on the Web server, which enables simple browser clients to invoke Oracle Tuxedo services without directly connecting to the Jolt server and Oracle Tuxedo.

  • WebLogic Connectivity for Oracle Tuxedo—a customized version of Jolt JSE Connectivity for the Oracle WebLogic Server. Accessing Tuxedo ATMI services in this manner requires the installation of Jolt class packages jolt.jar, joltjse.jar, and joltwls.jar on the machine running Oracle WebLogic Server.

    The Jolt client personality WebLogic Connectivity for Oracle Tuxedo is also known as Oracle Jolt for Oracle WebLogic Server.

8.12 Oracle Jolt Capabilities

Running as a Java applet or as a standalone Java client application, Oracle Jolt supports the following capabilities:

  • Transaction context propagation
  • Access to asynchronous Oracle Tuxedo event notifications
  • Typed buffer support

    Oracle Jolt automatically converts Java messages to native Oracle Tuxedo data types and buffers, and converts Oracle Tuxedo data types and buffers back to Java messages.

  • Jolt session pooling

    Oracle Jolt supports the construction and use of Jolt session (connection) pools to increase efficiency, availability, and reliability.

  • Jolt session pooling reset
  • Oracle Jolt support an option to reset a Jolt session pool without stopping the Jolt client, in the event of session pool failure. For example, if the Tuxedo server crashes or the Jolt Server Handler shuts down, the Jolt session pool may be reset without stopping the Jolt client.
  • Jolt Trace

    If java option -Dtuxedo.TMTRACE is set, JOLT client prints out trace as the trace format. JOLT trace format is the same as Oracle Tuxedo. Four trace categories,"atmi" , "inet", "trace" and "*" are supported.

    To accommodate the Oracle Jolt 22c Release 1 (22.1.0.0.0) server (JSL, JSH, JREPSVR) and Jolt Internet Relay (JRLY, JRAD) components, your environment must provide 2 MB of disk space. For Oracle Jolt 22c Release 1 (22.1.0.0.0) system requirements, including supported platforms, see Supported Platforms.

8.13 Oracle Jolt Client Support

As stated in Oracle Jolt Client Personalities, Oracle Jolt 22c Release 1 (22.1.0.0.0) supports the following four client types:
  • Jolt applet
  • Jolt application
  • JSE Connectivity for Oracle Tuxedo
  • WebLogic Connectivity for Oracle Tuxedo

The following table lists the requirements for the Oracle Jolt 22c Release 1 (22.1.0.0.0) applet and application client types:

Table 8-1 Requirements for Oracle Jolt Oracle Jolt 22c Release 1 (22.1.0.0.0) Applet and Application Client Types

Client Type Platform Supported
Jolt application—standalone application—running in a desktop environment

Java Development Kit (JDK) 1.8 In order to use latest Java versions, see

Note for A Note on Support for Newer Versions of Java.

The following table lists the requirements for the remaining three Jolt client types, all of which are implemented by HTML-based Jolt client classes running inside a Web server. The Web servers certified with Oracle Jolt 22c Release 1 (22.1.0.0.0) are listed in the table.

Table 8-2 Requirements for Web-Server based Oracle Jolt 22c Release 1 (22.1.0.0.0) Client Types

Vendor Web Server Version OS Version Oracle Jolt Client Personality Comments
Any vendor Java Servlet Engine (Any version) Any Supported OS running JDK 1.8 JSE Connectivity for Oracle Tuxedo For a description, see the first note after this table.
Oracle Systems, Inc. Oracle WebLogic Server 11g or higher Any WebLogic Connectivity for Oracle Tuxedo (also known as “Oracle Jolt for Oracle WebLogic Server”) For example installation instructions, see Installing Oracle Jolt 22c with Oracle WebLogic Server.

Note:

JSE Connectivity for Oracle Tuxedo is the name of the Jolt Web application server that simplifies the handling of servlets in an Oracle Tuxedo application environment. JSE is short for Java Servlet Engine.

8.14 Oracle Jolt Client Requirements

Oracle Jolt has the following client requirements:
  • Java Development Kit is certified for Oracle Jolt 22c. For more information, see Oracle Jolt Client Class Library.
  • Java-enabled browser (Internet Explorer) or Java Virtual Machine (JVM)

8.15 Oracle Jolt Client Class Library

Various implementations of Java tend to show minor differences in characteristics. Oracle Jolt 22c Release 1 (22.1.0.0.0) has been certified with JDK1.8.0_341, JDK-17.0.4, JDK 11.0.15.1 and OpenJDK 17.

8.16 Oracle Jolt Release Interoperability

An Oracle Jolt 22c Release 1 (22.1.0.0.0) client can interoperate with an Oracle Jolt 9.0, 9.1, 10.0, 10.3, 11.1.1.x, 12.1.1, 12.1.3 or 12.2.2 server implementation, and the client is able to use the new features available with Oracle Jolt 22c Release 1 (22.1.0.0.0).

An Oracle Jolt 9.0, 9.1, 10.0, 10.3, 11.1.1.x, 12.1.1, 12.1.3 or 12.2.2 client can interoperate with an Oracle Jolt 22c Release 1 (22.1.0.0.0) server implementation. However, only Oracle Jolt 9.0, 9.1, 10.0, 10.3, and 11.1.1.x, 12.1.1, 12.1.3, or 12.2.2 functionality is available to the Oracle Jolt client, although the server-side components of Oracle Jolt 22c Release 1 (22.1.0.0.0) are added in the enhanced functionality.

8.17 Oracle Jolt Documentation

For more information about Oracle Jolt, see the following documentation: