4 データベース接続の設定
5.4 アプリケーションの配置
5.4.3 トランザクション オブジェクト
データベースを使用する PowerBuilder アプリケーションには少なくとも1つのデー タベース接続があります。このデータベース接続はトランザクションオブジェクト の使用により実現します。PowerBuilder アプリケーションが Web へ配布されたとき、
Appeon Server は PowerBuilder アプリケーションで定義されたトランザクションオブ ジェクトは使わずに、Appeon Serverで設定された接続キャッシュを使用してデータ ベース接続を行います。
PowerBuilderアプリケーションのすべてのトランザクションオブジェクトはAppeon
Server の正しい接続キャッシュへマップされる必要があります。「正しい」という
のは、接続キャッシュが接続しているデータベースは、トランザクションオブジェ クトがアプリケーションで接続しているデータベースと同じであることです。接続 キャッシュの設定は AEM ではなく、Appeon Server の EAServer Manager を使用しま す。
トランザクションオブジェクトの接続キャッシュへのマップ方法には次の2つがあ ります。
PowerScript を使用してトランザクションオブジェクトと接続キャッシュを動
的にマップする。
AEMで、トランザクションオブジェクトと接続キャッシュを静的にマップ する。
PowerScript での動的マップは AEM でのマップより優先されます。このセクション
は AEM でのマップによる設定方法を紹介しています。PowerScript での動的マップ
についての詳細は4.3.1「トランザクションオブジェクトとコネクションキャッシ ュの動的なマッピング」を参照してください。
5.4.3.a トランザクション オブジェクトのマップにおける JDBC の要件
Appeon ServerはJ2EEアーキテクチャに基づいており、データベースとの接続には
JDBCが使用されます。JDBC接続キャッシュにはJDBC-ODBC Bridge、 Native-API/partly Java ドライバ、 Net-protocol/all-Java ドライバまたは Native-protocol/all-Java ドライバの4つのタイプのドライバを使用できます。
詳細情報については、セクション4.2「Appeon Server のコネクションキャッシュの 設定」を参照してください。このマニュアルには、推奨されるJDBC ドライバおよ び接続キャッシュの作成方法も解説されています。
5.4.3.b アプリケーションへトランザクション オブジェクト マップを設定する
アプリケーションが Appeon Server へ配布されたとき、AEM は自動的にアプリケー ション名をトランザクションオブジェクトページのアプリケーションリストに追 加します。
アプリケーションの静的トランザクションオブジェクトのマップを参照するには、
トランザクションオブジェクトページ内のアプリケーション名をクリックします。
新しいページが開かれ、現行のトランザクションオブジェクトのマッピングが表示 されます。
図 5-24:アプリケーションのトランザクション オブジェクトのマップの設定
既存のトランザクション オブジェクトのマップを修正する
1)接続キャッシュの変更
各トランザクション オブジェクトには、[接続キャッシュ]カラムにドロップダウ ン リストボックスがあります。このリストボックスには Appeon Server で作成され た JDBC 接続キャッシュが表示されます。
選択された接続キャッシュは、トランザクション オブジェクトが接続しているデー タベースと同じデータベースに接続していることを確認してください。
ドロップダウン リストボックスからその他の接続キャッシュを選択することで、現 行の接続キャッシュを変更できます。[更新]ボタンをクリックすると、トランザ クション オブジェクトへの変更が有効 になります。
2)データベース型の変更
トランザクション オブジェクトに接続されているデータベースが変更(たとえば、
すべてのデータがOracleからSybaseへ移動されたときなど)された場合、AEMで データベース型を変更する必要があります。
現行のデータベース型を変更するには、データベース型カラムのドロップダウンリ ストボックスからその他のデータベース型を選択します。[更新]ボタンをクリッ クすると、トランザクションオブジェクトへの変更が有効になります。
3)トランザクションオブジェクトのマップを削除する
トランザクションオブジェクトのマップを削除するには、[削除]ボタンをクリッ クします。操作を確認するメッセージボックスが表示されます。
デフォルトでは、各アプリケーションにトランザクションオブジェクト“SQLCA” が AEMで設定されています。PowerBuilder アプリケーションに SQLCA トランザク ションオブジェクトがない場合、この SQLCA トランザクションオブジェクトのマ ッピングを削除する必要があります。
新しいトランザクション オブジェクトのマップを追加する
ステップ 1 - 図 5-24 に示すトランザクションオブジェクトページ内の[トランザ
クションオブジェクトの追加]ボタンをクリックします。図 5-25 に示すトランザク ションオブジェクトの追加ページが表示されます。
図 5-25:トランザクション オブジェクトの追加
ステップ 2 -[トランザクション オブジェクト ]テキストボックスに、トランザク ション オブジェクト名を入力します。トランザクション オブジェクト名は大文字と 小文字を区別しません。トランザクション オブジェクトはオリジナル PowerBuilder アプリケーションの中で定義されたトランザクション オブジェクトである必要があ ります。
ステップ 3 -[コネクション キャッシュ]ドロップダウン リストボックスから接続 キャッシュを選択します。このリストボックスには Appeon Server で作成された JDBC 接続キャッシュがリストされています。
選択された接続キャッシュは、トランザクションオブジェクトが接続している同じ データベースに接続していることを確認してください。[接続のテスト]ボタンを クリックしてデータベースの接続をテストします。
ステップ 4 -[データベース型]ドロップダウンリストからデータベース型を選択 します。データベース型はトランザクションオブジェクトが接続している現行デー タベースのデータベース型にしてください。
ステップ 5 - AEM は指定されたトランザクションオブジェクトおよびデータベー
ス型が正しいことを確認しませんので、入力された情報を再度確認してください。
ステップ 6 -[接続のテスト]ボタンをクリックしてデータベースの接続をテスト します。
ステップ 7 -[トランザクションオブジェクトの追加]ボタンをクリックします。
複数のトランザクションオブジェクトを追加する場合、上記のステップを繰り返し てください。