ナビゲーションをスキップ

WebLogic Platform ツアー ガイド

  前 次 前と次、目次/インデックス/pdf を分けるコロン 目次  

従業員の情報を参照する

ここでは、新しい従業員である John Smith が自分の従業員情報を参照します。その過程で、アプリケーションがどのように組み込みデータベース コントロールを使用して、従業員情報データベースから従業員情報へのアクセスを簡略化しているかについて学習します。

ツアーの各手順」に示されている手順を実行し、この節で説明する概念を検討して、次の内容を学習します。

 


ツアーの各手順

注意 : Avitek 社の企業イントラネットにログインする」では、新しい従業員である John Smith として Avitek 社の企業イントラネットにログインしました。現在は、[従業員] ポータルが表示されています。

従業員情報はログイン時に自動的に入力されます。たとえば、John Smith の従業員プロファイルを [従業員] ポートレット内に表示できます。

 


組み込みコントロールを使用する

WebLogic Workshop には、アプリケーション内からエンタープライズ JavaBean (Enterprise Java Bean : EJB) やデータベースなどのエンタープライズ リソースへのアクセスを容易にする、一連の組み込みコントロールが用意されています。Java コントロールがユーザに代わってエンタープライズ リソースに接続する作業を行うため、開発者はアプリケーションを動作させるビジネス ロジックに専念できます。

組み込みコントロールのほとんどはカスタマイズできます。つまり、プロジェクトに新しい組み込みコントロールを追加すると、WebLogic Workshop によって、コントロールを拡張する Java コントロール拡張 (Java Control Extension : JCX) ファイルが生成されます。データベース コントロールや JMS コントロールなどの場合は、JCX ファイル内に定義されたメソッドを追加または編集して、コントロールをカスタマイズできます。それ以外の場合は、コントロールがアクセスする EJB に基づいてカスタマイズされる EJB コントロールと同様に、自動的にカスタマイズされます。

WebLogic Workshop では、組み込みコントロールを簡単に使用できます。デザイン ビューまたはフロー ビューで作業中に、[データ パレット] ウィンドウで [追加] をクリックし、ドロップダウン リストから目的のコントロールを選択します。コントロール ファイルは次のように作成できます。

コントロール エディタは、次の図にあるように、UsersDBControl データベース コントロールなどのコントロールを設計できるグラフィカル ツールです。

図 3-1 コントロール エディタ

コントロール エディタ


 

次の表では、前の図にあるコントロール エディタのツールについて説明します。

表 3-1 コントロールの設計に使用するツール 

番号

使用するツール

実行するタスク

1

[アプリケーション] ウィンドウ

ポータル アプリケーション プロジェクトに含まれるコントロール ファイルを作成、表示、および編集する。コントロール ファイルの名前は .jcx で終わる。

2

[デザイン ビュー] と [ソース ビュー]

この領域でコントロールを設計する。

3

[パレット] ウィンドウ

[パレット] ウィンドウからコンポーネントをデザイン ビューのキャンバスにドラッグ アンド ドロップすることで、メソッド、コールバック、変数などを追加する。[パレット] ウィンドウで使用できるオプションは、作成しているコントロールのタイプによって異なる。

4

[プロパティ エディタ] ウィンドウ

現在選択しているコントロール コンポーネントのプロパティを設定する。コントロール コンポーネントを選択するには、デザイン ビューのキャンバス内で該当するものをクリックするか、次に説明する [ドキュメント構造] ウィンドウでその名前を選択する。

5

[ドキュメント構造] ウィンドウ

コントロールを構成する Java エンティティの概要を表示する (「図 3-2」を参照)。この概要には、コントロールの Java クラス、メソッドとシグネチャ、変数、内部クラスが含まれる。

Java エンティティは、[ドキュメント構造] ウィンドウでクリックして選択できる。コントロール メソッドを選択すると、そのメソッドはデザイン ビューのキャンバス内でも選択され、[プロパティ エディタ] ウィンドウでそのプロパティを編集できる。Java エンティティをダブルクリックすると、ソース ビュー内のそのコードの場所に移動できる。


 

次の図に、データベース コントロールの [ドキュメント構造] ウィンドウを示します。

図 3-2 データベース コントロールの [ドキュメント構造] ウィンドウ

データベース コントロールの [ドキュメント構造] ウィンドウ


 

組み込みコントロールの追加についてさらに学習するには

 


従業員情報システムを検討する

[従業員] イントラネット ポータルをロードすると、UsersDBControl データベース コントロールが従業員情報データベースに接続されて、現在のユーザの従業員プロファイルを取得できます。

データベース コントロールは、組み込み Java コントロールの 1 つの例です。このコントロールにより、アプリケーションからリレーショナル データベースへのアクセスが容易になります。SQL コマンドをデータベースに発行すると、データベース コントロールはユーザに代わって次のタスクを実行します。

アプリケーションに新しいデータベース コントロールを追加する場合は、以下の項目を指定します。

  1. コントロールの変数名
  2. 新しいデータベース コントロール ファイルを追加するか、既存のファイルを参照するかどうか
  3. コントロールがバインドされるデータ ソース (手順 2 でコントロール ファイルを新規に作成する場合)

次の手順を実行して、WebLogic Workshop で UsersDbControl データベース コントロールを表示します。

  1. [アプリケーション] ウィンドウで、次に示すように e2ePortal/JoinDB/joindb フォルダを展開します。
  2. JoinDB フォルダ


     
  3. UsersDBControl.jcx をダブルクリックしてデータベース コントロールを開きます。
  4. UsersDBControl データベース コントロールとそれに関連付けられたメソッドが次のように表示されます。

    UsersDBControl データベース コントロール


     

    データベース コントロールには、従業員情報データベースにアクセスするためのさまざまなメソッドがあります。

  5. e2ePortalProject/employee/Controller.jpf をダブルクリックして、[従業員] ページフロー ファイルを開きます。
  6. [アクション ビュー] タブを選択します。
  7. UsersDBControl データベース コントロールのインスタンスである m_DBCtrl とそれに関連付けられたメソッドがページフローの右側に表示されます。

    UsersDBControl データベースのアクション ビュー


     
  8. [ソース ビュー] タブを選択します。
  9. この m_DBCtrl インスタンスは、現在のユーザをルックアップし、InfoForm フォーム Bean に従業員プロファイル情報を入力するために使用します。

    HttpSession sess= getSession();
    HttpServletRequest req=getRequest();
    joindb.UsersDBControl.User user= null;
    .
    .
    .
    user = m_DBCtrl.lookupUser(empId);
    .
    .
    .
    if(user==null)
    return new Forward( "theFirstPage" );
    else {
    sess.setAttribute("employeeid",user.employeeid);
    sess.setAttribute("employeename",user.employeename);
    sess.setAttribute("ssn",user.ssn);
    sess.setAttribute("departmentid",user.deptid);
    sess.setAttribute("mgrname",user.mgrname);
    sess.setAttribute("dateofhire",user.dohire);
    sess.setAttribute("salary",user.sal);
    sess.setAttribute("officeaddress",user.address);
    sess.setAttribute("homephone",user.homephone);
    sess.setAttribute("businessphone",user.bussphone);
    sess.setAttribute("position",user.position);
    sess.setAttribute("email",user.email);
    }
    return new Forward( "theFirstPage" );
    }
    .
    .
    .
    protected Forward UsrInfo(InfoForm form)
    {
    return new Forward("success");
    }

WebLogic Platform ツアーの次の手順に進む前に次の操作を実行してください。

  1. [ファイルすべてのファイルを閉じる] を選択し、開いているすべてのファイルを閉じます。
  2. 画面領域を節約するには、WebLogic Workshop のウィンドウを一時的に最小化します。

 

ナビゲーション バーのスキップ  ページの先頭 前 次