ステップ2: プログラムによるクライアントの初期化

Previous topic
前へ
Next topic
次へ

ビジネス・コンポーネント・プログラムによるクライアントのチュートリアルのこのステップでは、バッチ・クライアント用のプロジェクトおよびクラスを作成し、OnlineOrdersModuleアプリケーション・モジュールをインスタンス化して、CustomersViewビュー・オブジェクトのCustomersView1の用法を検索します。

このステップを完了する前に、ビジネス・コンポーネント・プロジェクトを作成したことを確認してください。

まず、バッチ・クライアント用のプロジェクトを作成し、必要なライブラリをプロジェクトのクラスパスに追加します。

バッチ・クライアント用のプロジェクトを作成するには、次のようにします。

  1. ナビゲータで「bcbatch.jws」を右クリックし、「新規の空プロジェクト」を選択します。
  2. 「新規プロジェクト」ダイアログで、プロジェクトのディレクトリ名にbatchclientと、プロジェクト・ファイル名にbatchclient.jprと入力します。
  3. ナビゲータで、「batchclient.jpr」を右クリックし、「プロジェクトの設定」を選択します。
  4. 「プロジェクトの設定」ダイアログで、ツリーから「ライブラリ」を選択します。
  5. 次のライブラリを「使用可能なライブラリ」リストから「選択済のライブラリ」リストに移動します。
  6. ツリーで、「パス」を選択します。
  7. 「追加クラスパス」フィールドに、<jdev_install>/jdev/mywork/bcbatch/OnlineOrders/classesと入力します。
  8. 「OK」をクリックして「プロジェクトの設定」ダイアログを閉じます。

次は、バッチ・クライアント用に空のクラスを作成します。

バッチ・クライアント用にクラスを作成するには、次のようにします。

  1. ナビゲータで、「batchclient.jpr」を右クリックし、「新規」を選択します。
  2. 「新規」ダイアログで、「カテゴリ」リストから「Client Tier」->「Swing/AWT」を、「項目」リストから「アプリケーション」を選択します。「OK」をクリックして「新規アプリケーション」ダイアログを開きます。
  3. 「名前」フィールドに、Batchと入力します。
  4. 「パッケージ」フィールドに、bcbatchと入力します。
  5. 「デフォルト・フレームを追加」のチェックを外します。
  6. 「OK」をクリックしてBatchクラスを生成し、そのソース・ノードを表示します。
  7. 「ファイル」->「すべて保存」を選択し、プロジェクトを保存します。

ここで、ビジネス・コンポーネント層に依存しない、必要なインタフェースおよびクラスをインポートします。oracle.jbo.serverのサーバー側のクラスのみインポートしないように注意してください。ローカル・モードでバッチ・クライアントを実行する予定でも、層に依存しないインタフェースおよびクラスのみを使用すると、アプリケーションはデプロイメント構成に依存しないからです。

ビジネス・コンポーネント層に依存しないインタフェースおよびクラスをインポートするには、次のようにします。

次に、show()メソッドを追加してデータを表示します。show()System.out.println()に対する単なる便利な委任メソッドです。

show()メソッドを追加するには、次のようにします。

ここで、クライアントのmain()メソッドにコードを追加して、OnlineOrdersModuleおよびCustomersViewをインスタンス化します。

アプリケーション・モジュールおよびビュー・オブジェクトをインスタンス化するには、次のようにします。

  1. main()メソッドに次のコードを追加します。
    
    ApplicationModule am_Ord = Configuration.createRootApplicationModule("OnlineOrders.OnlineOrdersModule", "OnlineOrdersModuleLocal");

    これにより、構成OnlineOrdersModuleLocalに格納された接続情報を使用して、OnlineOrdersModuleのインスタンスがローカル・モードで作成されます。ビジネス・コンポーネントを別のプラットフォーム(EJBセッションFacadeなど)にデプロイすると、JDeveloperはここで使用するための構成を新しく作成します。

  2. 直前に入力したコードのすぐ後ろに次のコードを追加します。
    ViewObject vo=am_Ord.findViewObject("CustomersView1");

    これにより、CustomersView1というビュー・オブジェクトを使用するために、OnlineOrdersModuleのデータ・モデルが検索されます。

これで、バッチ・クライアントを使用して、主キーによりCustomersView1の行を検索するための準備ができました。