| 3. サーバAPの設計 |
WebOTX画面テンプレートを使ったサーバAPの設計について説明します。
| 3.1. サーバAPの構造 |
WebOTX画面テンプレートを利用してサーバAPを開発する場合、WebOTX画面テンプレートが提供するクラスを継承してCORBAインタフェースクラスとAPロジッククラスを作成します。
サーバAPの構造は次のようになります。

CORBAインタフェースクラス
WebOTX画面テンプレートが提供するCORBAインタフェースクラスを継承して作成します。
コンストラクタを実装するだけでWebサーバ上で動作するWebOTX画面テンプレートとの連携が可能になります。
APロジッククラス
WebOTX画面テンプレートが提供するAPロジッククラスを継承して作成します。
doMethod メソッドをオーバライドして、ビジネスロジックを実装する各メソッドを呼び出すためのディスパッチ処理を実装します。
| 3.2. ディスパッチ処理 |
CORBAインタフェースクラスでは、Webブラウザから指定されたクラスのdoMethod メソッドを呼び出します。このディスパッチ処理は、WebOTX画面テンプレートが提供するCORBAインタフェースクラスを継承することにより、開発者はコーディング不要です。
Webブラウザでクラスを指定するには、そのクラス名をURLパラメータ“apservid”の値、またはHTMLの INPUTタグ(NAME="apservid")のVALUE値で指定します。
APロジッククラスのdoMethod メソッドでは、ビジネスロジックを実装する各メソッドを呼び出すためのディスパッチ処理を実装する必要があります。
doMethod でディスパッチ処理を可能にするために、入力画面用のHTMLで次の定義を記述する必要があります。 WebOTX画面テンプレートでは、Webブラウザからクラス名とメソッド名を受け取ることを前提にしています。
| 3.3. ビジネスロジック処理 |
ビジネスロジックを実装する各メソッドの処理シーケンスは次のようになります。なお、以下の説明では、WebOTX画面テンプレートが提供するDB制御クラスの機能を利用することを前提にしています。
| DBコネクション取得 |
|
|
| Webブラウザ入力情報取得 |
|
|
| ビジネスロジック処理 |
|
|
| 処理結果表示用HTMLの作成 |
| 3.3.1. DBコネクション取得 |
DB制御クラスからDBコネクションのオブジェクトを取得します。DB制御クラスの提供するメソッドについては、「リファレンス編」を参照してください。
| 3.3.2. Webブラウザ入力情報取得 |
Webブラウザから入力した情報や、Cookie等の制御情報をWebOTX画面テンプレートが提供するWebブラウザ情報クラスのメソッドを利用して取得します。
| 3.3.3. ビジネスロジック処理 |
Cookie等の制御情報を元にセション管理を行ったり、Webブラウザから入力された情報を元に業務処理を実行するロジックを作成します。DBアクセスを行う場合は、JDBCのAPIを利用しDBコネクションのオブジェクトに対してSQLの発行を指示します。
なお、DB制御クラスの機能を利用している場合は、メソッドを正常終了させた契機でDBに対してコミット処理を行います。
| 3.3.4. 処理結果表示用HTMLの作成 |
ビジネスロジック処理の結果をWebブラウザで参照可能にするために、処理結果表示用HTMLを作成して、出力パラメータに設定します。
| 3.4. エラー処理 |
エラーを検出した場合は、例外をthrowするとWebOTX画面テンプレートが提供するCORBAインタフェースクラスで、エラー表示用のHTMLを生成してWebブラウザに返却します。
エラー表示用のHTMLのイメージを変更する場合は、CORBAインタフェースクラスの createErrorHTML をオーバーライドしてください。
なお、DB制御クラスの機能を利用している場合は、例外を throw した契機でDBに対してロールバック処理を行います。