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

Figure C-2 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 11g Release 1 (11.1.1.2.0) distribution is installed.

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.

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.

Jolt Repository Server

The Jolt Repository Server (JREPSVR), running on the Tuxedo server, retrieves Jolt service definitions from the Jolt Repository and returns the service definitions to the Jolt Server Handler. The Jolt Repository Server also provides user support for updating or adding Jolt service definitions to the Jolt Repository.

Jolt Repository

The Jolt Repository, located on the Tuxedo server, is a central repository that contains definitions of Tuxedo ATMI services. These Jolt 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 Repository Editor, you can test new and existing Tuxedo services independently of the client applications.

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.

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 the tux_prod_dir/udataobj/jolt/relay directory, whereas the JRAD executable resides in the tux_prod_dir/bin directory.

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 content of a Jolt JAR file, ensure that the path to the JDK 1.3 (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:

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.

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 package jolt.jar (and possibly joltadmin.jar) on the machine running the Jolt application.

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.

Figure C-2 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 11g Release 1 (11.1.1.2.0) are listed in the table.

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

Oracle Jolt Client Class Library

Various implementations of Java tend to show minor differences in characteristics. Oracle Jolt 11g Release 1 (11.1.1.2.0) is based on JDK 1.5.0_0_9.

The Oracle Jolt class library is compatible with the browsers and JDK versions shown in Figure C-3.

Table C-3 Oracle Jolt Class Library Compatibility

Vendor

Browser Version

Java Virtual Machine (JVM)

OS Version

Microsoft

Internet Explorer 6.0

JDK 1.5.0_0_9

Windows 2003 Server, Windows XP Professional

Oracle Jolt Release Interoperability

An Oracle Jolt 11g Release 1 (11.1.1.2.0) client can interoperate with a Oracle Jolt 1.2, 1.2.1, 8.0, 8.1, 9.0, 9.1, or 10.0 server implementation, and the client is able to use the new features available with Oracle Jolt 11g Release 1 (11.1.1.2.0).

An Oracle Jolt 1.2, 1.2.1, 8.0, 8.1, 9.0, 9.1, 10.0 client can interoperate with an Oracle Jolt 11g Release 1 (11.1.1.2.0) server implementation, but only the Oracle Jolt 1.2, 1.2.1, 8.0, 8.1, 9.0, 9.1, or 10.0 functionality is available to the Oracle Jolt client, even though new functionality is added to the Oracle Jolt server-side components when they are upgraded to Oracle Jolt 11g Release 1 (11.1.1.2.0).