Interstage Application Server スタートガイド
目次 前ページ次ページ

第4章 J2EEアプリケーションの開発運用> 4.1 開発

4.1.2 Enterprise Beanの開発

Enterprise Beanの開発手順について説明します。
ここでは、開発環境であるApdesignerのEnterprise Bean生成ウィザードでプロジェクトを作成し、必要なクラスを追加してEnterprise Beanを作成します。

プロジェクト作成
Itemクラス作成
Javaファイル編集
JARファイル作成(ビルド)

プロジェクト作成

1. [スタート]メニューから[プログラム]>[Interstage]>[Apworks]メニュー内の[Apworks]を選択し、Apdesignerを起動します。

2. Apdesignerのメニューから[ファイル]>[新規]>[プロジェクト]を選択します。

3. [新規プロジェクト]ダイアログボックスで[J2EE]>[Enterprise JavaBeanプロジェクト]を選択し、[次へ]をクリックします。

4. [新規]ダイアログボックスの[Enterprise JavaBeanプロジェクト]ページでは、プロジェクトの情報を入力して[次へ]をクリックします。

[新規]ダイアログボックス [Enterprise JavaBeanプロジェクト]ページ

項目名

入力値

プロジェクト名

TutorialBean

プロジェクトコンテンツ

[ワークスペース内に新規プロジェクトを作成]を選択

5. [新規]ダイアログボックスの[Java設定]ページでは、何も変更せずに[次へ]をクリックします。

6. [選択]ページでは、生成するコードを確認して[終了]をクリックします。

[新規]ダイアログボックス [選択]ページ

項目名

入力値

コード生成

[コード生成を行う]を選択

使用可能なコード生成ウィザード

[Enterprise Bean]を選択

7. [Enterprise Bean生成ウィザード]ダイアログボックスでは、作成するEnterprise Beanの情報を入力して[次へ]をクリックします。

[Enterprise Bean生成ウィザード]ダイアログボックス [Enterprise Bean]ページ

項目名

入力値

ソースフォルダ

TutorialBean/src

パッケージ

pkgTutorialBean

名前

TutorialBean

EJBバージョン

[EJB2.0]を選択

Enterprise Bean種別

Stateful Session Bean

このEnterprise Beanは購入商品の商品名と個数をアプリケーションが終了するまで保持する必要があるため、[Enterprise Bean種別]は「Stateful Session Bean」を選択します。

8. [Stateful Session Bean生成ウィザード]ダイアログボックスの[Stateful Session Bean]ページでは、[トランザクション管理種別]に「Bean」を選択して[次へ]をクリックします。

[Stateful Session Bean生成ウィザード]ダイアログボックス [Stateful Session Bean]ページ

項目名

入力値

トランザクション種別

Bean

Home/Remoteインタフェースを生成する

チェックする

LocalHome/Localインタフェースを生成する

チェックしない

9. [ejbCreateメソッド定義]ページで、パラメタなしのejbCreateメソッドが定義されていることを確認して[次へ]をクリックします。

[Stateful Session Bean生成ウィザード]ダイアログボックス [ejbCreateメソッド定義]ページ

項目名

入力値

メソッド一覧

ejbCreate()

10. [ビジネスメソッド定義]ページでは、Enterprise Beanに実装するメソッドを指定します。メソッドを定義するため、[メソッド一覧]フィールドで[追加]をクリックします。

11. [メソッド定義]ダイアログボックスで、AddCartメソッドの定義を指定して[OK]をクリックします。

[メソッド定義]ダイアログボックス

項目名

入力値

メソッド名

AddCart

戻り値の型

void

パラメタリスト

String

変数名

name

同様にgetItemsメソッドを追加します。

[メソッド定義]ダイアログボックス

項目名

入力値

メソッド名

getItems

戻り値の型

Item[ ]

パラメタリスト

(何も指定しない)

12. [Stateful Session Bean生成ウィザード]ダイアログボックスに戻り、指定したメソッドが追加されていることを確認して[終了]をクリックします。

[Stateful Session Bean生成ウィザード]ダイアログボックス [ビジネスメソッド定義]ページ

項目名

入力値

メソッド一覧

AddCart(String)
getItems()

13. Apdesignerの[パッケージエクスプローラ]ビューで、[TutorialBean]プロジェクトに以下のファイルが生成されていることを確認してください。

Itemクラス作成

Itemクラス(getItemsメソッドの戻り値の型)を定義します。

14. Apdesignerの[パッケージエクスプローラ]ビューで[TutorialBean]>[src]>[pkgTutorialBean]を選択し、メニューから[ファイル]>[新規]>[クラス]を選択します。

15. [新規]ダイアログボックスの[Javaクラス]ページでは、クラスの情報を定義します。
インプリメントするインタフェースを指定するため、[インタフェース]フィールドで[追加]をクリックします。

16. [インプリメントされたインタフェースの選択]ダイアログボックスで、[マッチングする型]に「Serializable」を選択して[OK]をクリックします。

17. [新規]ダイアログボックスに戻り、クラスの情報を指定して[終了]をクリックします。

[新規]ダイアログボックス [Javaクラス]ページ

項目名

入力値

ソースフォルダ

TutorialBean/src

パッケージ

pkgTutorialBean

エンクロージング型

チェックしない

名前

Item

修飾子

[public]を選択
[abstract]、[final]をチェックしない

スーパークラス

(何も指定しない)

インタフェース

java.io.Serializable

どのメソッドスタブを作成しますか?

(チェックしない(すべて))

現在のプロジェクトのプロパティで構成されたとおりコメントを追加しますか

チェックしない

18. Apdesignerの[パッケージエクスプローラ]ビューで、[TutorialBean]プロジェクトに以下のファイルが追加されていることを確認してください。

Javaファイル編集

Javaエディタを使用して以下のソースファイルを編集します。

19. Apdesignerの[パッケージエクスプローラ]ビューでソースファイルを右クリックし、[アプリケーションから開く]>[Javaエディタ]を選択します。

[Item.java]

Itemクラスには以下のメソッドを定義します。

package pkgTutorialBean;

import java.io.Serializable;

public class Item implements Serializable {
/** 追加ここから **/
    private String name;
    private int quantity = 0;

    public Item() {
    }
    public Item(String name) {
        this.name = name;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name ;
    }
    public int getQuantity() {
        return quantity;
    }
    public void setQuantity(int quantity) {
        this.quantity=quantity ;
    }
/** 追加ここまで **/

}

[TutorialBean.java]

package pkgTutorialBean;

import java.rmi.*;
import java.util.*; /** 追加 **/
import javax.ejb.*;

public class TutorialBean implements javax.ejb.SessionBean {
    private javax.ejb.SessionContext context;
    private Hashtable items = new Hashtable(); /** 追加 **/

    public TutorialBean() {
    }

    public void ejbCreate() {
/** 追加ここから **/
        items.clear(); 
/** 追加ここまで **/
    }

    public void AddCart(String name) {
/** 追加ここから **/
        Item item = (Item)items.get(name);
        if(item == null) {
            item = new Item(name);
            items.put(name, item);
        }
        item.setQuantity(item.getQuantity()+1);
/** 追加ここまで **/

    }

    public Item[] getItems() {
/** 追加ここから **/
             return (Item[])items.values().toArray(new Item[0]);
/** 追加ここから **/

/** 削除ここから **
        return null;
** 削除ここまで **/

    }

    public void setSessionContext(javax.ejb.SessionContext ctx)
        throws javax.ejb.EJBException, java.rmi.RemoteException {
        context = ctx;
    }

    public void ejbRemove()
        throws javax.ejb.EJBException, java.rmi.RemoteException {
    }

    public void ejbActivate()
        throws javax.ejb.EJBException, java.rmi.RemoteException {
    }

    public void ejbPassivate()
        throws javax.ejb.EJBException, java.rmi.RemoteException {
    }

}

20. Apdesignerのメニューから[ファイル]>[すべてを保存]を選択し、編集したファイルを保存します。

JARファイル作成(ビルド)

ビルドを実行してJARファイルを作成します。

Apdesignerの初期状態では、ファイルの保存時に自動的にビルドが行われるようにオプションが設定されており、ビルド時にJARファイルを作成するようにビルドツールが設定されています。
そのため、Apdesignerのメニューで[プロジェクト]>[自動的にビルド] がチェックされている場合は、Enterprise Beanの実装を保存したときにエラーが発生していなければ、JARファイルが作成されています。[問題]ビューにエラーなどのメッセージが表示されていないことを確認します。
[プロジェクト]>[自動的にビルド]がチェックされていない場合は、Apdesignerの[パッケージエクスプローラ]ビューで[TutorialBean]プロジェクトを選択し、メニューから[プロジェクト]>[プロジェクトのビルド]を選択します。ビルド終了後、[問題]ビューにエラーなどのメッセージが表示されていないことを確認します。


目次 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2007