9 Oracle Jolt 22cリリースの概要とインストール情報

次の各項では、Oracle Jolt 22cリリースの概要を示し、Oracle Jolt 22cリリース・ソフトウェア・コンポーネントをインストールするための前提条件および準備に関する情報を説明します:

9.1 Oracle Joltについて

Oracle Joltは、リモートJavaクライアントが既存のOracle Tuxedo ATMIサービスにアクセスできるようにするJavaクラス・ライブラリとAPIです。次の図に示すように、Oracle Joltは既存のTuxedo ATMIアプリケーションの機能を拡張し、イントラネットやインターネットにも対応できます。

図9-1 Joltアプレットを使用したOracle Joltの通信アーキテクチャ

Oracle Joltの通信アーキテクチャ

上の図は、Oracle Joltでサポートされている5種類のJoltクライアント・パーソナリティの中の1つを示しています(すべてのパーソナリティについて簡潔に「Oracle Joltクライアント・パーソナリティ」で説明されています)。

9.2 Oracle Joltのコンポーネント

Oracle Joltは、企業ファイアウォール内のサーバーへの安全で信頼性のあるアクセスを可能にし、Tuxedo ATMIサービスにアクセスするJavaベースのクライアント・プログラムを作成するための、次のコンポーネントで構成されています。

次の図に示すように、Joltサーバーの実装は1つ以上のJoltサーバー・ハンドラ、1つ以上のJoltサーバー・リスナーおよび1つのメタデータ・リポジトリ・サーバーで構成され、これらはすべて同じOracle Tuxedoサーバー・マシン上で稼働します。

図9-2 Oracle Joltサーバーの実装

Oracle Joltサーバーの実装

Joltサーバーは、Joltクライアントからのネットワーク接続の受け付け、Joltメッセージの変換、複数のクライアントの単一プロセスへの多重化、Tuxedo ATMIアプリケーションとの間でのリクエストの送受信を行います。Tuxedoシステムの他のすべての実行可能プログラムと同様、Joltサーバー・コンポーネントはtux_prod_dir/binディレクトリにあります。tux_prod_dirは、Oracle配布キットOracle Tuxedo 22cリリース1 (22.1.0.0.0)がインストールされているディレクトリを表します。

9.3 Joltサーバー・リスナー

Joltサーバー・リスナー(JSL)は、Tuxedoサーバーで稼働するリスニング・プロセスで、Joltクライアントからの接続リクエストを受け付け、同様にTuxedoサーバーで稼働するJoltサーバー・ハンドラに接続を割り当てます。また、Joltサーバー・ハンドラ・プロセスのプールを管理し、負荷に対応して起動させます。

9.4 Joltサーバー・ハンドラ

Joltサーバー・ハンドラ(JSH)は、Tuxedoサーバーで稼働するゲートウェイ・プロセスで、JoltクライアントとTuxedo ATMIサーバー・アプリケーション間の通信を処理します。JSHプロセスはアプリケーションの管理ドメインに常駐し、ローカルのTuxedoの掲示板にクライアントとして登録されます。各JSHプロセスは、複数のJoltクライアントを管理できます。JSHはすべてのリクエストを多重化し、1つのJoltクライアントに1つの接続で応答します。

9.5 メタデータ・リポジトリ・サーバー

TMMETADATAサーバーは、Joltサービス定義をTuxedoサービス・メタデータ・リポジトリから取り出し、そのサービス定義をJSHに返します。TMMETADATAサーバーは、Joltサービス定義の更新または追加も行います。

9.6 メタデータ・リポジトリ

メタデータ・リポジトリは、Tuxedoサーバーに常駐し、Tuxedo ATMIサービスの定義が収められている中央リポジトリです。これらのサービス定義情報は、JoltがTuxedoサービスにアクセスする時点で利用されます。また、Joltクライアント・アプリケーションにサービスをエクスポートしたり、Joltクライアントから定義を見えなくすることによってサービスをアンエクスポートしたりできます。Oracle Tuxedo Services Consoleを使用すると、クライアント・アプリケーションからは独立して、新規または既存のTuxedoサービスをテストできます。

9.7 Joltインターネット・リレー

Joltインターネット・リレーはJoltクライアントからのメッセージをJoltサーバー・リスナー(JSL)またはJoltサーバー・ハンドラ(JSH)にルーティングします。これにより、JSL、JSHおよびTuxedoアプリケーションをWebサーバーと同じマシンで実行する必要がなくなります。Joltインターネット・リレーは次のコンポーネントで構成されます。
Joltリレー(JRLY)
JoltクライアントからのJoltメッセージをJoltリレー・アダプタ(JRAD)を介してJSLまたはJSHにルーティングするスタンドアロン・プログラム。JoltリレーはTuxedoシステム・サーバーまたはクライアント・プロセスではないため、Oracle Tuxedoシステム・ソフトウェアのバージョンに依存しません。
Joltリレー・アダプタ(JRAD)
Joltリレーのバックエンド・リレーとして機能するTuxedoシステム・サーバー。JRADの配置場所は、JSLサーバーの接続先であるTuxedoのホスト・マシンおよびサーバー・グループでなくても構いません。

次の図は、Joltインターネット・リレーの接続パスを示しています

図9-3 Oracle Joltインターネット・リレーの接続パス

Oracle Joltインターネット・リレーの接続パス

Joltサーバーは、イントラネットのJoltクライアントには直接接続でき、インターネット上のJoltクライアントにはJoltインターネット・リレーを介して間接的に接続でき、すべて同時に接続することが可能です。Joltインターネット・リレーはJoltサーバーおよびJoltクライアントからは透過的です。

JRLY実行可能ファイル(jrly)は、tux_prod_dir/udataobj/jolt/relayディレクトリおよびtux_prod_dir/binディレクトリにあります。

9.8 Joltクラス・ライブラリ

Joltクラス・ライブラリは、Jolt APIを実装するクラス・ファイルで構成されています。これらのクラスによって、JavaクライアントはOracle Tuxedo ATMIサービスを呼び出すことができるようになります。Joltクラス・ライブラリには、通信属性、通知、ネットワーク接続、トランザクション、およびサービスについての設定、検索、管理および呼出しを行う機能が含まれています。

Joltクラス・ライブラリ・ファイルはtux_prod_dir/udataobj/joltディレクトリにあり、次のJARファイルに格納されています:

  • 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

Jolt JARファイルの内容を表示するには、JDK 1.8.x(またはそれ以上の)ソフトウェアへのパスがPATH変数の最初に含まれていることを確認した後、tux_prod_dir/udataobj/joltディレクトリに移動して次のコマンドを入力します:

prompt> jar -tvf filename.jar

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
. 
. 
.

9.9 JoltBeans

Oracle JoltBeansには、Oracle Jolt用のJavaBeans対応インタフェースが用意されています。JoltBeansは、Joltクライアントを作成するため、JavaBeans対応の統合開発環境(IDE)で使用されるBeansコンポーネントです。

JoltBeansは、JoltBeansツールキット(Oracle Jolt用のJavaBeans対応インタフェースで、JoltServiceBean、JoltSessionBean、JoltUserEventBeanが含まれる)とJolt GUI Bean (Jolt対応Abstract Window Toolkit (AWT) BeanとJolt対応Swing Bean)の2つのJava Beanのセットで構成されています。Oracle Joltをこれらのコンポーネントに分離することにより、クライアントおよびサーバー・アプリケーションのトランザクション・コンポーネントおよびインターネット・コンポーネントを別々に実装し、大規模なインターネットおよびイントラネット・サービスに要求される安全性およびスケーラビリティを確保できます。

9.10 Jolt ECID

Jolt呼出しプロセスは次のとおりです: JOLTクライアント --> JSL/JSH --> tuxedoサーバー --> サービス
  1. Jolt接続プールでは、WeblogicとOracle Tuxedoの間のECIDの伝播がサポートされます。ECIDが伝播されてリクエスト・メッセージに挿入されるのは、javaオプション-Dtuxedo.ECID_ENABLEまたは環境変数ECID_ENABLEyに設定されている場合です。Javaオプション-Dtuxedo.ECID_ENABLEが環境変数ECID_ENABLEよりも優先されます。ECIDは、Oracle Tuxedoからの応答メッセージで返送することもできます。
  2. ECIDはDMS (ダイナミック・モニタリング・サービス)に依存し、ECIDはデフォルトでスタンドアロンのjoltクライアントではサポートされません。ECIDを作成する場合は、最初にDMSをインストールする必要があります。
  3. Jolt ECIDはJRLYおよびJRADに影響しません。joltクライアント・トレース内のECIDの書式は次のとおりです。
     000915:30475@slc05are:1: ECID <0000KqPMc659XbHpIsT4if1LPfwR000001>: atmi: { JoltSession.send(len 132)

9.11 Oracle Joltクライアント・パーソナリティ

Javaプログラマは、Oracle Joltを使用して既存および新規のTuxedoアプリケーションをリモートに起動するクライアント・アプレットおよびアプリケーションを作成する以外にも、HTTPリクエストに応じてサーバー側Javaタスクを実行するHTTPサーブレットを作成できます。この後者のJolt接続により、単純なWebクライアントであっても、汎用サーブレットをサポートするWebアプリケーションを通じてTuxedoアプリケーション・サービスにアクセスできるようになります。

Oracle Joltでは、次のタイプのJavaクライアント・パーソナリティをサポートしています。

  • Joltアプレット—Webブラウザ環境で実行されるダウンロード可能なJava対話式プログラムで、Joltクラスを使用してWebページ内からTuxedoサービスを起動します。この方法でTuxedo ATMIサービスにアクセスするには、Joltアプレットが動作するマシンに、Joltクラス・パッケージjolt.jar(および場合によってはその他のJoltクラス・パッケージexceptjoltjse.jarおよびjoltwls.jar)がダウンロードおよびインストールされている必要があります。
  • Joltアプリケーション—Java仮想マシンで動作するスタンドアロンJavaクライアントで、Joltクラスを使用してTuxedoサービスを起動します。この方法でTuxedo ATMIサービスにアクセスするには、Joltアプリケーションが動作するマシンにJoltクラス・パッケージjolt.jar(および場合によってはjoltadmin.jar)がインストールされている必要があります。
  • JSE Connectivity for Oracle Tuxedo—Java Webアプリケーション・サーバー環境(Oracle WebLogic Serverなど)で動作するJolt HTTPサーブレットで、このサーブレットを通じて、単純なWebブラウザ・クライアントはTuxedo ATMIサービスを呼び出すことができます。この方法でTuxedo ATMIサービスにアクセスするには、Webアプリケーション・サーバーが動作するマシンにJoltクラス・パッケージjolt.jarおよびjoltjse.jarがインストールされている必要があります。

    Jolt HTTPサーブレットは、Joltセッション・プール・クラスを使用して、単純なブラウザ・クライアントに代わってTuxedoサービスを起動します。このため、このサーブレットはWebサーバー上のすべてのJoltトランザクションを処理します。これにより、単純なブラウザ・クライアントは直接JoltサーバーとOracle Tuxedoに接続せずにOracle Tuxedoサービスを呼び出すことができます。

  • WebLogic Connectivity for Oracle Tuxedo—Jolt JSE ConnectivityのOracle WebLogic Server用バージョンです。この方法でTuxedo ATMIサービスにアクセスするには、Oracle WebLogic Serverが動作するマシンにJoltクラス・パッケージjolt.jarjoltjse.jar、およびjoltwls.jarがインストールされている必要があります。

    Joltクライアント・パーソナリティであるWebLogic Connectivity for Oracle TuxedoはOracle Jolt for Oracle WebLogic Serverとも呼ばれます。

9.12 Oracle Joltの機能

JavaアプレットまたはスタンドアロンJavaクライアント・アプリケーションとして動作している場合、Oracle Joltは次の機能をサポートしています。

  • トランザクション・コンテキストの伝播
  • 非同期型Oracle Tuxedoイベント通知へのアクセス
  • 型付きバッファのサポート

    Oracle Joltでは、自動的にJavaメッセージをネイティブOracle Tuxedoデータ型およびバッファに変換し、Oracle Tuxedoデータ型およびバッファをJavaメッセージに変換し直します。

  • Joltセッション・プール

    Oracle Joltでは、Joltセッション(接続)プールの作成および使用をサポートし、効率性、アベイラビリティおよび信頼性を高めています。

  • Joltセッション・プールのリセット
  • Oracle Joltでは、セッション・プールで障害が発生した場合に、Joltクライアントを停止せずにJoltセッション・プールをリセットするオプションをサポートしています。たとえば、TuxedoサーバーがクラッシュしたりJoltサーバー・ハンドラが停止した場合、Joltクライアントを停止せずにJoltセッション・プールをリセットできます。
  • Joltトレース

    javaオプション-Dtuxedo.TMTRACEが設定されると、JOLTクライアントはトレースをトレース形式として出力します。JOLTのトレース形式は、Oracle Tuxedoと同じです。4つのトレース・カテゴリ("atmi""inet""trace" "*")がサポートされています。

    Oracle Jolt 22cリリース1 (22.1.0.0.0)サーバー(JSL、JSH、JREPSVR)およびJoltインターネット・リレー(JRLY、JRAD)コンポーネントを使用するには、使用環境に2MBのディスク領域が必要です。サポートされているプラットフォームなど、Oracle Jolt 22cリリース1 (22.1.0.0.0)のシステム要件の詳細は、サポートされているプラットフォームを参照してください。

9.13 Oracle Joltクライアントのサポート

Oracle Joltクライアント・パーソナリティで説明されているとおり、Oracle Jolt 22cリリース1 (22.1.0.0.0)は次の4つのクライアント・タイプをサポートしています:
  • Joltアプレット
  • Joltアプリケーション
  • JSE Connectivity for Oracle Tuxedo
  • WebLogic Connectivity for Oracle Tuxedo

次の表に、Oracle Jolt 22cリリース1 (22.1.0.0.0)のアプレットおよびアプリケーション・クライアント・タイプの要件を示します:

表9-1 Oracle Jolt 22cリリース1 (22.1.0.0.0)のアプレットおよびアプリケーション・クライアント・タイプの要件

クライアント・タイプ サポートされているプラットフォーム
デスクトップ環境で動作するJoltアプリケーション(スタンドアロン・アプリケーション)

Java Development Kit (JDK) 1.8。最新Javaバージョンを使用するには、次を参照してください

新しいバージョンのJavaのサポートに関するノート

次の表に、Webサーバー内で動作するHTMLベースのJoltクライアント・クラスによって実装される残りの3つのJoltクライアント・タイプの要件を示します。表には、Oracle Jolt 22cリリース1 (22.1.0.0.0)の動作が保証されているWebサーバーが示されています。

表9-2 Webサーバー・ベースのOracle Jolt 22cリリース1 (22.1.0.0.0)クライアント・タイプの要件

ベンダー Webサーバーのバージョン OSバージョン Oracle Joltクライアント・パーソナリティ コメント
任意のベンダー Javaサーブレット・エンジン(任意のバージョン) JDK 1.8が稼働する任意のサポートされるOS JSE Connectivity for Oracle Tuxedo 説明は、この表の後の最初のノートを参照してください。
Oracle Systems, Inc. Oracle WebLogic Server 11g以上 任意 WebLogic Connectivity for Oracle Tuxedo (Oracle Jolt for Oracle WebLogic Serverとも呼ばれる) サンプルのインストール手順は、Oracle WebLogic ServerへのOracle Jolt 22cのインストールを参照してください。

ノート:

JSE Connectivity for Oracle Tuxedoは、Oracle Tuxedoアプリケーション環境でのサーブレットの処理を単純化するJolt Webアプリケーション・サーバーの名前です。JSEはJava Servlet Engineの略称です。

9.14 Oracle Joltクライアントの要件

Oracle Joltには、次のクライアントの要件があります。

9.15 Oracle Joltクライアント・クラス・ライブラリ

Javaには様々な実装がありますが、機能は大きく異なりません。Oracle Jolt 22cリリース1 (22.1.0.0.0)は、JDK1.8.0_341、JDK-17.0.4、JDK 11.0.15.1およびOpenJDK 17に対して動作が保証されています。

9.16 Oracle Joltリリースの相互運用性

Oracle Jolt 22cリリース1 (22.1.0.0.0)クライアントは、Oracle Jolt 9.0、9.1、10.0、10.3、11.1.1.x、12.1.1、12.1.3または12.2.2サーバー実装と相互運用が可能です。このクライアントはOracle Jolt 22cリリース1 (22.1.0.0.0)の新機能を使用できます。

Oracle Jolt 9.0、9.1、10.0、10.3、11.1.1.x、12.1.1、12.1.3または12.2.2クライアントは、Oracle Jolt 22cリリース1 (22.1.0.0.0)サーバー実装と相互運用が可能です。ただし、Oracle Jolt 22cリリース 1 (22.1.0.0.0)のサーバー側コンポーネントが拡張機能に追加されていますが、Oracle Joltクライアントで使用できるのは、Oracle Jolt 9.0、9.1、10.0、10.3、11.1.1.x、12.1.1、12.1.3または12.2.2の機能のみです。

9.17 Oracle Joltのドキュメント

Oracle Joltの詳細は、次のドキュメントを参照してください。