bea ホーム | 製品 | dev2dev | support | askBEA
BEA Logo Tuxedo
 ドキュメントのダウンロード   サイトマップ   用語集 
検索
0

Jolt

 Previous Next Contents Index View as PDF  

Servlet Connectivity for BEA Tuxedo を使う

BEA Jolt のサーブレット・コネクティビティの機能を利用すると、HTTP リクエストに対する処理を HTTP サーブレットを使用して行い、サーバ・サイドの Java タスクを実行することができます。Jolt では、Java Web Server バージョン 1.1.3 以上のサーブレット・コネクティビティの機能がサポートされており、標準的なサーブレット・エンジンがサポートされています。Jolt のセッション・プール・クラスを使用すると、単純な HTML クライアントからも一般的なサーブレットをサポートする Web サーバに接続することができます。これで、すべての Jolt トランザクションは、クライアント側のアプレットやアプリケーションの代わりに、Web サーバ側のサーブレットで処理されます。

サーブレット機能により、HTML クライアントは BEA Tuxedo に直接接続せずに BEA Tuxedo サービスを呼び出すことができます。HTML クライアントは、HTTP プロトコルを使用して Web サーバ (BEA Tuxedo サービスに対するリクエストをサーブレットを使って処理するサーバ) に接続します。Web サーバ上のサーブレットは、Jolt セッションを使用して BEA Tuxedo サービスに対するリクエストを管理します。つまり、Jolt サーバ・ハンドラ (JSH: Jolt Server Handler) または Jolt サーバ・リスナ (JSL: Jolt Server Listener) を介して BEA Tuxedo サーバに接続し、BEA Tuxedo サービスに対するリクエストを作成します。

この機能により、さまざまな HTML クライアントがリモートの BEA Tuxedo サービスのリクエストを作成できるようになります。これで、すべての Jolt トランザクションはサーバ側で処理されます。元の HTML クライアントを変更する必要はありません。したがって、単純な構造の HTML クライアントで処理することが可能になり、HTML クライアントの管理も容易になります。

ここでは、次の内容について説明します。

 


サーブレットとは

サーブレットとは、クライアントの代わりにサーバ上で呼び出され、実行される Java クラスのことです。アプレットがクライアント側で実行されるのに対し、サーブレットはサーバ側で実行されます。HTTP サーブレットは、受け取った HTTP リクエストを処理し、それに対して HTTP 応答を送信する Java クラスです。HTTP サーブレットは HTTP サーバに常駐しており、サーブレット・クラス JavaSoft javax.servlet.http.Http の拡張である必要があります。これで、サーブレットは、一般的なサーブレット・エンジンのフレームワークで動作します。

HTTP サーブレットには、次のような利点があります。

 


サーブレットと Jolt の関係

Jolt のサーブレット・コネクティビティ機能を使用すると、一般的な HTTP サーブレットで Jolt 機能を利用することができます。Jolt サーブレットは、次の Jolt クラスを使用して HTTP リクエストを処理します。

Jolt サーブレット・コネクティビティ・クラス

以下は、Jolt サーブレット・コネクティビティ・クラスの説明です。

ServletDataSet

このクラスには、BEA Tuxedo サービスの入力パラメータと出力パラメータを表すデータ・エレメントが格納されています。HTML のフィールド名と値を javax.servlet.http.HttpServletRequest オブジェクトからインポートするメソッドが用意されています。

ServletPoolManagerConfig

このクラスは、Jolt セッション・プール・マネージャと、関連する 1 つまたは複数の Jolt セッション・プール用のスタートアップ・クラスです。必要に応じてセッション・プールを作成し、最低限必要な数のセッションを設定してセッション・プールを開始します。Jolt セッション・プール・マネージャは、1 つまたは複数の名前付きセッション・プールを内部的にトラッキングします。

このクラスは bea.jolt.pool.PoolManagerConfig から派生しています。呼び出し側は Properties オブジェクトまたは Hashtable オブジェクトを静的な startup() メソッドに渡してセッション・プールを作成したり、静的な getSessionPoolManager() メソッドを渡して bea.jolt.pool.servlet.ServletSessionPoolManager クラスのセッション・プール・マネージャを取得することができます。

ServletResult

このクラスには、ServletResult オブジェクトの各フィールドを String 型で取得するメソッドが用意されています。

ServletSessionPool

このクラスには、Java サーブレットで使用するセッション・プールが用意されています。セッション・プールは、BEA Tuxedo システムに対する 1 つまたは複数の接続 (セッション) を表します。このクラスには、BEA Tuxedo サービスの入力パラメータを javax.servlet.http.HttpServletRequest オブジェクトとして受け取る呼び出しメソッドが用意されています。

ServletSessionPoolManager

このクラスは、サーブレットに固有なセッション・プール・マネージャです。ServletSessionPool クラスの 1 つまたは複数のセッション・プールの集まりを管理します。このクラスには、ServletSessionPoolManager クラスと、このクラスに含まれるセッション・プールを作成するためのメソッドが用意されています。これらのメソッドは、セッション・プール用の管理 API の一部です。

 


HTTP サーブレットの作成と登録

HTTP サーブレットを作成と登録を行う前に、まず Jolt サーブレット・コネクティビティをサポートするパッケージ (jolt.jarjoltjse.jarservlet.jar) をインポートする必要があります。HTTP サーブレットは、javax.servlet.http.HttpServlet の拡張です。作成した HTTP サーブレットは、一般的なサーブレットをサポートする Web サーバに登録します。カスタマイズしたサーブレットは、HTTP 機能を持つ標準の HTTP サーブレットと同様に扱われます。

各 HTTP サーブレットには、特定の URL の形式が登録されます。ある URL が要求されると、対応するサーブレットが呼び出され、要求が処理されます。

サーブレットの登録方法については、お使いの Web サーバのマニュアルを参照してください。

 


Jolt サーブレット・コネクティビティのサンプル

Jolt ソフトウェアには、Jolt サーブレット・クラスを使用してサーブレット・コネクティビティを解説するサンプル・アプリケーションが用意されています。次の 3 つのサンプルが用意されています。

Jolt サーブレット・クラスの使用方法を学ぶには、これらのサンプルで示されているコード例を参照してください。

サーブレット・アプリケーションのサンプルを表示するには

Jolt サンプル・アプリケーションのコードを表示するには、Jolt API クライアント・クラス (通常は、Jolt のインストール時のオプション項目) をインストールする必要があります。指定したディレクトリに Jolt API クライアント・クラスをインストールしたら、次のディレクトリにあるサンプル・アプリケーション・ファイルを選択してください。

<Installation directory>¥udataobj¥jolt¥examples¥servlet

サンプル・コードを表示するには、Microsoft のメモ帳などのテキスト・エディタを使って、サンプル・アプリケーションごとに Java ファイルを開いてください。

サンプル・アプリケーション「SimpApp」

Jolt には、SimpApp というサンプル・アプリケーションがあります。SimpApp は、サーブレットがどのように Servlet Connectivity for BEA Tuxedo を使用するかを示しています。SimpApp では、以下のサーブレットのタスクが説明されています。

このサンプルでは、サーブレットが BEA Tuxedo に接続し、BEA Tuxedo サービスを呼び出す方法を解説しています。まず、simpapp.html ファイルを呼び出します。サーブレットは初期化時にセッション・プール・マネージャを作成します。作成されたセッション・プール・マネージャは、doPost() メソッドが呼び出されたときに、セッションを取得するために用いられます。このセッションは、ポストされた引数「SVCNAME」で指定された BEA Tuxedo サービスに接続するために使用されます。このサンプルの場合は「TOUPPER」サービスです。TOUPPER サービスは、引数「STRING」に指定された文字列を大文字に変換し、結果を返します。結果は、クライアントのブラウザ内に別画面で表示されます。

注記 このサンプルでは Weblogics Server が使用されます。

SimpApp の実行に必要な条件

SimpApp の実行に必要な条件は、以下のとおりです。

SimpApp のインストール

  1. Web アプリケーション・サーバに Jolt クラス・ライブラリ (jolt.jar) と Servlet Connectivity for BEA Tuxedo クラス・ライブラリ (joltjse.jar) をインストールします。Web アプリケーション・サーバによっては、必要に応じてクラス・ファイルを解凍します。

  2. SimpAppServlet.java をコンパイルします。標準の JDK 1.1.x classes.zip、JSDK 1.1 クラス、Jolt クラス・ライブラリ、および Servlet Connectivity for BEA Tuxedo クラス・ライブラリが classpath に含まれていることを確認してください。
javac -classpath $(JAVA_HOME)/lib/classes.zip:$(JSDK)/lib/servlet.jar:
	$(JOLTHOME)/jolt.jar:$(JOLTHOME)/joltjse.jar:./classes
		-d ./classes SimpAppServlet.java

注記 SimpAppServlet のパッケージ名は examples.jolt.servlet.simpapp です。

  • simpapp.htmlsimpapp.properties の 2 ファイルを public HTML ディレクトリに置きます。

  • simpapp.properties ファイルを変更します。「appaddrlist」と「failoverlist」を正しい Jolt サーバのホストとポートに変更します。SimpApp でセキュリティ機能が有効になっている場合は、正しい BEA Tuxedo 認証情報を指定します。次に例を示します。
  • 	#simpapp
    	#Fri Apr 16 00:43:30 PDT 1999
    	poolname=simpapp
    	appaddrlist=//host:7000,//host:8000
    	failoverlist=//backup:9000
    	minpoolsize=1
    	maxpoolsize=3
    	userrole=tester
    	apppassword=appPass
    	username=guest
    	userpassword=myPass

    1. SimpAppServlet に「Simpapp」を登録します。詳細については、お使いの Web アプリケーション・サーバを参照してください。BEA WebLogic ユーザの場合は、config.xml ファイルの次のセクションを追加します。
      <Application
      Deployed="true"
      Name="simpapp"
      Path=".¥config¥mydomain¥applications"
      >
      <WebAppComponent
      Name="simpapp"
      Targets="myserver"
      URI="simpapp"
      />
      </Application>

    2. 次のように入力して、SimpApp の最初のページ「simpapp.html」にアクセスします。

      http://mywebserver:8080/simpapp.html

    サンプル・アプリケーション「BankApp」

    BankAppアプリケーションは、サーブレットが PageCompiledServlet を使い、Servlet Connectivity for BEA Tuxedo を利用してどのように作成されるかを示しています。BankApp では以下の方法を説明します。

    BankApp の実行に必要な条件

    BankApp の実行に必要な条件は、以下のとおりです。

    Admin のインストール

    1. Web アプリケーション・サーバに Jolt クラス・ライブラリ (jolt.jar) と Servlet Connectivity for Tuxedo クラス・ライブラリ (joltjse.jar) をインストールします。Web アプリケーション・サーバによっては、必要に応じてクラス・ファイルを解凍します。

    2. Web アプリケーション・サーバの public HTML ディレクトリに、HTML、JHTML、bankapp.properties ファイルをすべてコピーします (WebLogic の場合は$WEBLOGIC/myserver/public_html)。
    	bankapp.properties
    	tellerForm.html
    	inquiryForm.html
    	depositForm.html
    	withdrawalForm.html
    	transferForm.html
    	InquiryServlet.jhtml
    	DepositServlet.jhtml
    	WithdrawalServlet.jhtml
    	TransferServlet.jhtml

    1. bankapp.properties ファイルを変更します。「appaddrlist」と「failoverlist」を正しい Jolt サーバのホストとポートに変更します。BankApp でセキュリティ機能が有効になっている場合は、正しい BEA Tuxedo 認証情報を指定します。次に例を示します。
    	#bankapp
    	#Fri Apr 16 00:43:30 PDT 1999
    	poolname=bankapp
    	appaddrlist=//host:8000,//host:7000
    	failoverlist=//backup:9000
    	minpoolsize=2
    	maxpoolsize=10
    	userrole=teller
    	apppassword=appPass
    	username=JaneDoe
    	userpassword=myPass

    1. 必要に応じて、お使いのサーブレット・エンジンから JHTML の自動コンパイル機能を有効にしておきます。詳細については、お使いの Web アプリケーション・サーバのマニュアルを参照してください。

    2. お使いのブラウザで次の URL を指定し、Servlet Connectivity for BEA Tuxedo を使って BankApp にアクセスしてください。

      http://mywebserver:8080/tellerForm.html

    サンプル・アプリケーション「Admin」

    「Admin」サンプル・アプリケーションでは、以下のサーブレットのタスクを説明します。

    Admin の実行に必要な条件

    Admin の実行に必要な条件は、以下のとおりです。

    Admin のインストール

    1. Web アプリケーション・サーバに Jolt クラス・ライブラリと Servlet Connectivity for BEA Tuxedo クラス・ライブラリをインストールします。

    2. すべての JHTML ファイルを public HTML ディレクトリ (WebLogic の場合は $WEBLOGIC/myserver/public_html for WebLogic) にコピーします。
    	PoolList.jhtml
    	PoolAdmin.jhtml

    1. セッション・プールの一覧を表示するには、お使いのブラウザで次の URL を指定してください。

      http://mywebserver:8080/PoolList.jhtml

     


    サーブレットに関するその他の情報

    サーブレットの作成方法と使用方法の詳細については、以下の Web サイトを参照してください。

    BEA WebLogic サーブレットに関するマニュアル

    http://edocs.beasys.co.jp/e-docs/wls60e/adminguide/index.html

    http://edocs.beasys.co.jp/e-docs/wls60e/servlet/index.html

    http://e-docs.bea.com/wls/docs60/javadocs/index.html

    Java サーブレット

    http://jserv.java.sun.com/products/java-server/documentation/
    webserver1.1/index_developer.html

    サーブレット関連団体

    http://servlet-interest@java.sun.com

     

    Back to Top Previous Next
    Contact e-docsContact BEAwebmasterprivacy