BEA Logo BEA Tuxedo Release 8.0

  BEA ホーム  |  イベント  |  ソリューション  |  パートナ  |  製品  |  サービス  |  ダウンロード  |  ディベロッパ・センタ  |  WebSUPPORT

 

   Tuxedo ホーム   |   BEA Jolt   |   先頭へ   |   前へ   |   次へ   |   目次   |   索引

 


クラス・ライブラリの機能の概要

Jolt クラス・ライブラリには、クライアント・サイドのアプリケーションやアプレット (独立した Java アプリケーションとして実行するか、または Java 対応の Web ブラウザで実行) を開発するための BEA Tuxedo アプリケーション開発者向けのツールが用意されています。bea.jolt パッケージには Jolt クラス・ライブラリが用意されています。Jolt クラス・ライブラリを使用するには、クライアント・プログラムやアプレットでこのパッケージをインポートする必要があります。bea.jolt パッケージをインポートする方法については、リストの「Jolt のファンド転送の例 (SimXfer.java)」を参照してください。

Java アプリケーション と Java アプレット

ブラウザで実行する Java プログラムは「アプレット」と呼ばれます。アプレットとは、アプリケーションの一部として特定の機能を実行し、簡単にダウンロードできるサイズの小さいプログラムのことです。多くのブラウザでは、高度なセキュリティを実現するため、Java アプレットの機能に制限が設けられています。以下は、アプレットに対するいくつかの制限です。

Java アプレットの制限には、大抵の場合プログラミング上の対応策があります。ブラウザでサポートされるアプレットの機能またはアプレットの制限については、お使いのブラウザの Web サイト (www.netscape.com、www.microsoft.com など) や開発者用マニュアルを参照してください。また、Jolt リレーを使うと、ネットワーク接続に関するいくつかの制限を回避することができます。

一方、Java アプリケーションはブラウザ上では実行されず、上記のような制限を受けることはありません。たとえば、Java アプリケーションは、実行中のホスト・マシン上で別のアプリケーションを起動できます。アプレットがユーザ・インターフェイスとしてブラウザや appletviewer のウィンドウ環境に依存するのに対し、Java アプリケーションでは独自のユーザ・インターフェイスを作成する必要があります。また、アプレットが可搬性のある小さいプログラムとして設計されるのに対し、Java アプリケーションは Java 以外の言語で作成されたプログラムとほとんど同じように操作することができます。Java アプリケーションと Java アプレットの最大の違いは、アプレットに対して設けられているブラウザでのセキュリティの制限およびプログラムの適応範囲です。

Jolt クラス・ライブラリの特徴

Jolt クラス・ライブラリには次の特徴があります。

エラーと例外処理

Jolt クラス・ライブラリは、Jolt インタープリタのエラーおよび BEA Tuxedo のエラーを例外として返します。『BEA Jolt API Reference』には、エラーと例外のクラス・リファレンスが含まれています。

Jolt でのクライアント/サーバ関係

BEA Jolt は、分散型のクライアント/サーバ環境で動作し、Java クライアントを BEA Tuxedo をベースとするアプリケーションに接続します。

次の図は、Jolt プログラムと Jolt サーバの間のクライアント/サーバ関係を示しています。

Jolt でのクライアント/サーバ関係


 

図に示すように、Jolt サーバはネイティブな BEA Tuxedo クライアントのプロキシとして動作し、ネイティブな BEA Tuxedo クライアントで利用できる機能をインプリメントします。BEA Jolt サーバは、BEA Jolt クライアントからのリクエストを受け取ると、BEA Tuxedo ATMI インターフェイスを介してこれらのリクエストを BEA Tuxedo サービス要求にマッピングします。リクエストおよび関連付けられたパラメータは、メッセージ・バッファにパッケージされ、ネットワーク経由で BEA Jolt サーバに配信されます。BEA Jolt サーバと BEA Jolt アプレットの間のすべての通信は、BEA Jolt 接続マネージャにより、BEA Jolt トランザクション・プロトコルを使用して処理されます。BEA Jolt サーバは、メッセージからデータを取り出し、必要に応じてデータ変換 (数値形式や文字セットなど) を行ってから、メッセージで指定された適切なサービスを BEA Tuxedo に要求します。

BEA Tuxedo システムが受け取ったサービス要求は、ほかの BEA Tuxedo のリクエストとまったく同じ方法で処理されます。結果は ATMI インターフェイスを通して BEA Jolt サーバに返され、そこで結果とエラー情報がメッセージにパッケージ化されると、BEA Jolt のクライアント・アプレットに送信されます。BEA Jolt クライアントは、メッセージの内容をさまざまな BEA Jolt クライアントのインターフェイス・オブジェクトにマッピングして、リクエストの処理を完了します。

クライアント側では、ユーザ・プログラムにクライアント・アプリケーション・コードが含まれています。Jolt クラス・ライブラリが提供する JoltSession と JoltTransaction がサービス要求を処理します。

次の表は、クライアント側から送信されるリクエストと、それに対する Jolt サーバ側のアクションを簡単なプログラムの例で示したものです。

Jolt クライアント/サーバの相互作用

Jolt クライアント

Jolt サーバ

1

attr=new JoltSessionAttributes();

attr.setString(attr.APPADDRESS, "//myhost:8000");

クライアントを BEA Tuxedo 環境にバインドします。

2

session=new JoltSession(attr, username, userRole, userPassword, appPassword);

クライアントを BEA Tuxedo にログオンさせます。

3

withdrawal=new JoltRemoteService( servname, session );

リポジトリ内のサービス属性を検索します。

4

withdrawal.addString("accountnumber", "123");

withdrawal.addFloat("amount", (float) 100.00);

クライアントに変数を設定します (Jolt サーバ側の動作ではありません)。

5

trans=new JoltTransaction( time-out, session);

新しい Tuxedo トランザクションを開始します。

6

withdrawal.call(trans);

BEA Tuxedo サービスを実行します。

7

trans.commit() or trans.rollback();

トランザクションを完了またはロールバックします。

8

balance=withdrawal.getFloatDef("balance," (float) 0.0);

結果を取り出します (Jolt サーバ側の動作ではありません)。

9

session.endSession();

クライアントを BEA Tuxedo からログオフさせます。


 

「Jolt クライアント/サーバの相互作用」をまとめると、次のようになります。

  1. JoltSessionAttributes クラスを使用してクライアントを BEA Tuxedo 環境に バインドします。

  2. セッションを確立します。

  3. 変数を設定します。

  4. 必要なトランザクション処理を行います。

  5. クライアントを BEA Tuxedo からログオフさせます。

上記のアクティビティは、Jolt クラス・ライブラリのクラスによって処理されます。これらのクラスには、データの設定や消去を行ったり、リモート・サービスのアクションを処理するメソッドが用意されています。Jolt クラス・ライブラリの詳細については、「Jolt オブジェクト間の関係」を参照してください。

 

先頭へ戻る 前のトピックへ 次のトピックへ