DB2データベース用Oracle ADF Business Componentsの開発

このトピックでは、IBM DB2 Universal Database for Windows NT 7.2に対するOracle ADF Business Componentsプロジェクトを作成する手順を説明します。データベース実装および従う必要のある制限事項の違いに注意してください。「Oracle9i LiteおよびOracle以外のデータソース用にOracle ADF Business Componentsを開発する場合の制限事項」を参照してください。

このトピックの説明は、次の手順で構成されています。

  1. 要件
  2. サード・パーティ接続用にJDeveloperを準備
  3. 新規接続の作成
  4. ビジネス・コンポーネント・プロジェクトの開始
  5. ビジネス・ロジック層のテスト
  6. OC4Jへのデプロイ

要件

ここでの手順を実行するには、次のものが必要です。

DB2のスキーマの設定

DB2用のデータベース、セキュリティおよびユーザー・モデルは、Oracleモデルとは異なります。次の手順に従い、JDeveloperからDB2への接続を開始します。これにより、ORDENTというデータベースと、パスワードがdb2admindb2adminというユーザーおよびログインが作成されます(DB2に別のadminログインとパスワードを使用している場合は、それが使用されます)。

  1. DB2 Control Centerを使用して、ORDENTというデータベースを作成します。
    1. 「スタート」を開き、「プログラム」->「IBM DB2」->「Control Center」を選択します。
    2. Control Centerが開いたら、システム(またはDBホスト)を選択し、adminユーザー名とパスワードを入力します。
    3. データベース・インスタンス(DB2など)を選択し、データベース・フォルダを右クリックしてウィザードから「作成」->「データベース」を選択します。
    4. ウィザードの手順に従って、ORDENTを作成します(データベース名と別名にORDENTを使用)。
  2. DB2表作成スクリプトを¥BC4J¥samples¥sql¥createdeptemp_db2.sqlで検索します。
  3. 最初の行を、
    connect to ordent user scott using tiger
    から、選択したユーザー名とパスワードの値に変更します。たとえば、次のように変更します。
    connect to ordent user db2admin using db2admin
  4. DB2のコマンドライン・プロセッサを使用してスクリプトを実行するには、次のとおり選択して特別なDB2コマンド・シェルを作成します。
    「スタート」->「プログラム」->「IBM DB2」->「Command Window」
    これにより、DB2用に特別に設定されたWindows NTコマンド・プロセッサが作成されます。
  5. -fスイッチを使用してコマンドライン・プロセッサを起動し、スクリプトを実行します。
    db2 -f createdeptemp_db2.sql
  6. 表の内容がスクリプト実行の最後に表示されることを確認します。
  7. 次の手順に進みます。

サード・パーティ接続用にJDeveloperを準備

JDeveloper IDEを接続用に準備するには、jdev.confファイルを編集する必要があります。この手順では、JDeveloperをシャットダウンする必要があります。シャットダウンする前に、ここに記載された手順を印刷しておくと便利です。

サード・パーティ接続用にJDeveloper IDEを準備するには、次のようにします。

  1. JDeveloperを実行中の場合は、作業内容を保存してJDeveloperをシャットダウンします。
  2. テキスト・エディタで<jdev_install>/jdev/bin/jdev.confを開きます。AddJavaLibFileとAddJavaLibPathに多数のエントリが表示されます。
  3. DB2ドライバのlibディレクトリの場所を指定する新しいAddJavaLibFileエントリを作成します。デフォルトの場所を選択すると、エントリは次のようになります。
    AddJavaLibFile C:/Program Files/SQLLIB/java/db2java.zip
    注意: パスではスラッシュ(/)を使用してください。
  4. AddNativeCodePathに別のエントリを追加します。デフォルトの場所を選択すると、エントリは次のようになります。
    AddNativeCodePath C:/Program Files/SQLLIB/bin
  5. テキスト・エディタで、jdev.confを保存します。
  6. -verboseフラグを使用して、JDeveloperをコマンドラインから起動します。この手順は必須ではありませんが、これにより、このトピックの手順で重要なシステム・メッセージを参照できます。
    1. コマンド・プロンプトを開きます。
    2. <jdev_install>/jdev/binディレクトリに移動します。
    3. jdev -verboseを入力します。

これで、JDeveloperがサード・パーティ接続を処理できるように設定されました。次は、今後のプロジェクトで適切なライブラリがデフォルトで組み込まれるように指定する必要があります。

新規接続の作成

新規のデータベース接続を作成するには、接続ウィザードを使用します。

新規接続を作成するには、次のようにします。

  1. JDeveloperのシステム・ナビゲータで「接続」ノードを右クリックし、「データベース接続の作成」を選択して接続ウィザードを起動します。
  2. 「初期画面」ページが表示された場合は、情報を確認して「次へ」をクリックします。
  3. 「タイプ」ページで接続名としてdb2connを入力し、「接続タイプ」ドロップダウン・リストで「サード・パーティ製JDBCドライバ」を選択します。「次へ」をクリックします。
  4. 「認証」ページで、ユーザー名およびパスワードを入力し、「パスワードをデプロイ」のチェック・ボックスをチェックします。「次へ」をクリックします。
  5. 「接続」ページで、Javaクラス名およびURLを入力します。
    Javaクラス名: COM.ibm.db2.jdbc.app.DB2Driver
    URL: jdbc:db2:ORDENT
    注意: 最後の要素(ORDENT)はクライアント接続の別名です。
  6. 「テスト」ページで、「接続のテスト」をクリックします。「成功」というステータス・メッセージが表示されます。
    エラー・メッセージが表示された場合は、次の表を参照するか、データベース管理者に確認してください。

エラー・メッセージ 考えられる原因
"Unable to find driver" Javaクラス名のスペルの誤り
"Error establishing socket" マシン名のスペルの誤り
"No suitable driver can be found" URLの形式の誤り
"Login failed" パスワードの誤り

ビジネス・コンポーネント・プロジェクトの開始

Oracleデータベースを使用するビジネス・コンポーネント・プロジェクトを作成したことがある場合は、次の手順を理解しているはずです。違いは、SQLスタイルにDB2を、型マップにJavaを選択することです。また、このプロジェクトで適切なライブラリを使用することも指定します。

  1. 新しい空のプロジェクトを作成します。
  2. プロジェクトを右クリックし、「新規ビジネス・コンポーネント」を選択します。
  3. 「接続」ページで、ドロップダウン・リストから、「db2conn」接続、「DB2」SQLスタイル、「Java」型マップを選択します。「次へ」をクリックします。
  4. パッケージ名を入力するかデフォルト名を受け入れ、「次へ」をクリックします。
  5. 「ビジネス・コンポーネント」ページに、データベース内の表のリストが表示されます。DEPTおよびEMPを選択し、「選択済」リストに移動します。
  6. 「終了」をクリックします。
  7. システム・ナビゲータで、プロジェクト・ノードを右クリックし、「プロジェクトの設定」を選択します。
  8. ナビゲーション・ツリーで、「構成」の下の「Development」「ライブラリ」をクリックします。
  9. 「選択済のライブラリ」ペインで、「DB2 JDBC」(構成がまだ不適切であることを示すため、赤で表示)を選択し、「編集」をクリックします。
    注意: DB2 JDBCライブラリが存在しない場合は、ここで作成できます。
  10. ライブラリ定義を編集し、ZIPファイルの正しい場所を指すようにします。デフォルトのインストールを選択すると、パスは次のようになります。
    C:¥Program Files¥SQLLIB¥java¥db2java.zip
  11. 「OK」をクリックし、ダイアログを閉じます。

ビジネス・ロジック層のテスト

ビジネス・ロジック層を即座にテストするには、Business Component Browser(Business Component Tester)を使用します。

Business Component Browserでビジネス・ロジック層をテストするには、次のようにします。

  1. システム・ナビゲータで、アプリケーション・モジュール・ノードを右クリックし、ポップアップ・メニューから「テスト」を選択します。
  2. 「OK」をクリックします。
  3. Business Component Browserのナビゲータで、ビュー・オブジェクト・メンバーを右クリックして「表示」を選択します。
  4. データをスクロールできれば、正常に構成できていることになります。

OC4Jへのデプロイ

プロジェクトのローカルでのテストが正常に終了したら、OC4Jへデプロイできます。ただし、まずOC4Jを外部データソースとともに使用するよう構成する必要があります。

OC4Jを外部データソースとともに使用するよう構成するには、次のようにします。

  1. テキスト・エディタで、<OracleHome>/j2ee/home/config/application.xmlファイルを編集します。
  2. Program Files/SQLLIB/java/db2java.zipProgram Files/SQLLIB/binを指す<library>タグを追加します。

    固定パス名を使用する場合は、システム固有のスラッシュの向きを使用する必要があります。たとえばWindowsでは、円記号を使用します。

    <library path="C:¥Program Files¥SQLLIB¥java¥db2java.zip"/>
    <library path="C:¥Program Files¥SQLLIB¥bin"/>

    また、JDeveloperとDB2が同じローカル・ドライブ上にある場合は、相対パスを使用できます(この場合はスラッシュを使用)。たとえば、次のようになります。

    <library path="../../../../Program Files/SQLLIB/java/db2java.zip"/>
    <library path="../../../../Program Files/SQLLIB/bin"/>

    これらの値が正しく設定されていないと、OC4JコンソールでDB2エントリに関するエラーが発生します。

  3. 設定が終了したら、ビジネス・コンポーネント・プロジェクトをOC4Jにデプロイできます。
  4. たとえば、EJB Session Beanとしてデプロイすると、正しいデータソース情報を含んでいるdata-sources.xmlというファイルが、デプロイしたEARファイルに自動的に追加されます。OC4Jのdata-sources.xmlファイルは、デフォルトでは使用されません。これをオーバーライドするには、アプリケーション・モジュール・プロパティを編集し、代替データソースを指すようにする必要があります。自動生成されたdata-sources.xmlファイルに含まれていない名前を選択してください。data-sources.xmlファイルは通常、次のようになります。
    <data-source
      class="com.evermind.sql.DriverManagerDataSource"
      name="IBMDB2DS"
      location="jdbc/IBMDB2CoreDS"
      xa-location="jdbc/xa/IBMDB2XADS"
      ejb-location="jdbc/IBMDB2DS"
      connection-driver="COM.ibm.db2.jdbc.app.DB2Driver"
      username="scott"
      password="tiger"
      url="jdbc:db2:ORDENT"
      inactivity-timeout="30"
    /            

 

 

Copyright © 1997, 2004, Oracle. All rights reserved.