付録A.1 サンプルプロジェクトの概要
ここでは,Developerが提供するサンプルプロジェクト(Bank)の概要を説明します。
- 〈この項の構成〉
(1) サンプルプロジェクトの内容
Developerが提供しているサンプルプロジェクト(Bank)は,Webブラウザから入力されたユーザID(User ID)を持つユーザの資金を当座預金口座(Checking Account)から普通預金口座(Savings Account)へ移動させるプログラムです。表示された画面上でユーザIDと取引額(Transaction amount)を入力し,[Transfer]ボタンをクリックすると,指定したユーザの当座預金口座から指定した金額が普通預金口座に送金されます。資金はデータベースで管理され,資金移動時に当座預金口座テーブルと普通預金口座テーブルが更新されます。
このサンプルプロジェクト(Bank)の構成を次に示します。
このサンプルプロジェクト(Bank)では,アノテーションを使用してデータベースに接続します。
指定したユーザID,金額に対して処理を実行します。「Bank」で指定できるユーザIDとユーザごとの初期残高は次の表に示すとおりです。
User ID |
Checking Account※ |
Savings Account※ |
---|---|---|
001 |
10,000 |
500 |
002 |
20,000 |
1,000 |
003 |
30,000 |
1,500 |
- 注※
-
表示される金額の単位は円です。
サンプルプロジェクトのEJBでは,@Resourceアノテーションでリソースアダプタを取得して,データベースにアクセスします。@Resourceアノテーションの指定内容を次に示します。
-
BankEJB.java
@Resource(mappedName="DB_Connector_for_Cosminexus_Driver") private DataSource dataSource;
また,サーブレット(Webコンテナ)では,@EJBアノテーションでEJBを取得して,EJBにアクセスします。@EJBアノテーションの指定内容を次に示します。
-
BankServlet.java
@EJB(name="BankEJB") private BankIF bank ;
なお,@EJBアノテーションに指定している参照名「BankEJB」は,BankEJBのコードで次のように定義しています。
-
BankEJB.java
@Stateful(name = "BankEJB")
このアノテーションは,EJBがStateful Session Beanであることを表します。
(2) サンプルプロジェクトの前提環境
付録Aでは,次の環境を前提として,サンプルプロジェクト(Bank)の使用手順を説明します。
-
Eclipseがセットアップされている環境
付録Aでは,Eclipseのセットアップが正しく行われている環境を前提としています。Eclipseのセットアップについては「2.4 Eclipseセットアップ機能を使用したセットアップ」を参照してください。
-
開発環境インスタントセットアップ機能で構築した環境
付録Aでは,開発環境インスタントセットアップ機能で構築した環境を前提としています。このため,次の条件に当てはまる論理サーバを使用します。
-
アプリケーションサーバがローカルにインストールされている。
-
環境構築が正しく実施されている。
-
J2EEサーバを開始する前に,J2EEサーバに関係する論理サーバをあらかじめ開始している。
-
J2EEサーバモードが推奨モードである。
V9互換モードで実行したい場合は,サーバランタイムをCosminexus J2EE V9互換モードで登録し,Bankサンプルの各プロジェクト(Bank,Bank_EJB,Bank_Web)のサーバランタイムをCosminexus J2EE V9互換モードに変更してください。
-
-
JREの設定
次に示すJDKを使用してください。
-
DeveloperのJDK(<Developerのインストールディレクトリ>\jdk)
JDKは,Eclipseの[設定]ダイアログの[インストール済みの JRE]ページで設定できます。JDKの確認方法については,「2.5.1 JDKの確認」を参照してください。
-
-
Management Serverリモート管理機能の接続先
次に示すホストを指定してください。
-
localhost
Management Serverリモート管理機能の接続先は,Eclipse(WTPコネクタ)で設定します。設定方法は「4.2 リモート管理機能の設定」を参照してください。
-
-
使用するパースペクティブ
次に示すパースペクティブを使用します。ただし,パースペクティブの設定は,デフォルトから変更していないことを前提としています。
-
デバッグを行う場合:[デバッグ]パースペクティブ
-
デバッグ以外の場合:[J2EE]パースペクティブ
-
-
プロキシの設定
インターネットの接続にプロキシを使用している場合は,Eclipseのプロキシを設定してください。Eclipseのプロキシは,[設定]ダイアログの[ネットワーク接続]ページで設定できます。プロキシの設定方法については,「2.6.1 Eclipseのプロキシの設定」を参照してください。
-
リソースアダプタ
サンプルプロジェクト(Bank)では,開発環境インスタントセットアップ機能がデプロイしたリソースアダプタを使用します。なお,このリソースアダプタは,J2EEリソースアダプタとしてデプロイされます。
(3) サンプルプロジェクトの構成
サンプルプロジェクト(Bank)では,次のプロジェクトを提供しています。
プロジェクト名 |
概要 |
---|---|
Bank |
エンタープライズアプリケーションプロジェクトです。 |
Bank_EJB |
EJBプロジェクトです。サンプルプロジェクト(Bank)のモジュールプロジェクトに指定します。 |
Bank_Web |
動的Webプロジェクトです。サンプルプロジェクト(Bank)のモジュールプロジェクトに指定します。 |
BankDBBatch |
シンプルプロジェクトです。サンプルプロジェクト(Bank)で使用するテーブルを作成するためのファイルが格納されています。 |
サンプルプロジェクト(Bank)が提供するプロジェクトの構成は,次のとおりです。
(4) サンプルプロジェクトの提供形態と格納先
Developerは,サンプルプロジェクト(Bank)をzipフォーマットのアーカイブファイル「Bank.zip」として提供しています。Bank.zipは,次のディレクトリに格納されます。
<Developerのインストールディレクトリ>\ADP\samples
(5) サンプルプロジェクトのディレクトリ構成
Bank.zipを任意の場所に解凍すると,次のディレクトリ構成になります。
ディレクトリー/ファイル |
説明 |
---|---|
Bank |
エンタープライズアプリケーションプロジェクトのルート |
┣EarContent |
コンテンツ・フォルダ |
┃┣META-INF |
管理情報を格納するディレクトリ |
┃┗application.xml ┃ |
DDファイル (J2EEアプリケーション(EAR)の配備記述子) |
┗.project |
プロジェクト記述ファイル (Eclipseのプロジェクトの情報を保存) |
Bank_EJB |
EJBプロジェクトのルート |
┣ejbModule |
ソースファイル格納用ディレクトリ |
┃┣bank |
パッケージ・フォルダ |
┃┃┗ejb |
パッケージ・フォルダ |
┃┃ ┣BankEJB.java ┃┃ ┃ |
Javaソースファイル (EJBプロジェクト用のソースコード) |
┃┃ ┣BankIF.java ┃┃ ┃ |
Javaソースファイル (EJBプロジェクト用のソースコード) |
┃┃ ┗BankItem.java ┃┃ |
Javaソースファイル (EJBプロジェクト用のソースコード) |
┃┗META-INF |
管理情報を格納するディレクトリ |
┃ ┗MANIFEST.MF |
マニフェストファイル |
┣.classpath ┃ |
クラスパスファイル (プロジェクトのクラスパスを保存) |
┗.project |
プロジェクト記述ファイル (Eclipseのプロジェクトの情報を保存) |
Bank_Web |
Webプロジェクトのルート |
┣src |
ソースファイル格納用のディレクトリ |
┃┗bank |
パッケージ・フォルダ |
┃ ┗servlet |
パッケージ・フォルダ |
┃ ┣BankServlet.java |
Javaソースファイル |
┃ ┗BankServletException.java |
Javaソースファイル |
┣WebContent |
Webルートフォルダ |
┃┣META-INF |
管理情報を格納するディレクトリ |
┃┃┗MANIFEST.MF |
マニフェストファイル |
┃┣WEB-INF ┃┃┃ |
Webクライアントから直接アクセスできないファイルを格納するディレクトリ |
┃┃┣lib |
ライブラリ格納用ディレクトリ |
┃┃┗web.xml ┃┃ |
DDファイル (Webアプリケーションの配備記述子) |
┃┣bank.jsp ┃┃ |
JSPファイル(IDと数値を入力して,Servletに送信する) |
┃┣error_500.jsp |
JSPファイル(エラーを表示する) |
┃┗index.jsp ┃ |
JSPファイル(サンプルプロジェクトの入り口となり,Servletを呼び出す) |
┣.classpath ┃ |
クラスパスファイル (プロジェクトのクラスパスを保存) |
┗.project |
プロジェクト記述ファイル (Eclipseのプロジェクトの情報を保存) |
BankDBBatch ┃ |
サンプルプロジェクトのルート |
┣bank_tblcreate.bat ┃ |
バッチファイル (テーブル作成バッチファイル) |
┣Insert_BankTable_ ┃ Control_checking |
コントロールファイル (checkingテーブルのコントロールファイル) |
┣Insert_BankTable_ ┃ Control_saving |
コントロールファイル (savingテーブルのコントロールファイル) |
┣Insert_BankTable_ ┃ Input_checking |
データファイル (checkingテーブルのデータファイル) |
┣Insert_BankTable_ ┃ Input_saving |
データファイル (savingテーブルのデータファイル) |
┣tablecreate ┃ |
SQLファイル (テーブルのスキーマ定義SQLファイル) |
┗.project |
プロジェクト記述ファイル (Eclipseのプロジェクトの情報を保存) |