Cosminexus アプリケーション開発ガイド
ここでは,Developerが提供するサンプルプログラムの概要を説明します。
Developerが提供しているサンプルプログラム(Bank)は,Webブラウザから入力されたユーザIDを持つユーザの資金を当座預金口座から普通預金口座へ移動させるプログラムです。資金はデータベースで管理され,資金移動時に当座預金口座テーブルと普通預金口座テーブルが更新されます。
このサンプルプログラムの構成を次に示します。
図A-1 サンプルプログラム(Bank)の概要
このサンプルプログラムでは,アノテーションを使用してデータベースに接続する方法を示します。
アノテーション対応EJBで@Resourceアノテーションを使用して,リソースを取得します。
@Resource(mappedName="DB_Connector_for_Cosminexus_Driver") private DataSource ds; |
サーブレット側からビジネスインタフェースを使用したStateful Session Beanをlookupするには,JNDIを使用します。
Context ic = new InitialContext();
Object objref = ic.lookup("java:comp/env/ejb/Bank");
BankHome home = (BankHome)PortableRemoteObject.narrow(objref, BankHome.class);
|
指定したユーザID,金額に対して処理を実行します。「Bank」で指定できるユーザIDは「001」,初期残高は「10000円」です。
付録Aでは,次の環境を前提として,サンプルプログラムの使用手順を説明します。
サンプルプログラムでは,次のプロジェクトを提供しています。
表A-1 サンプルプログラムが提供するプロジェクト
| プロジェクト名 | 概要 |
|---|---|
| Bank | エンタープライズアプリケーションプロジェクトです。 |
| Bank_EJB | EJBプロジェクトです。Bankのモジュールプロジェクトに指定します。 |
| Bank_Web | Webプロジェクトです。Bankのモジュールプロジェクトに指定します。 |
サンプルプログラムが提供するプロジェクトの構成は,次のとおりです。
Developerは,サンプルプログラムをzipフォーマットのアーカイブファイル「Bank.zip」として提供しています。Bank.zipは,次のディレクトリに格納されます。
<Cosminexusのインストールディレクトリ>\ADP\MyEclipse\Samples |
Bank.zipを任意の場所に解凍すると,次のディレクトリ構成になります。
表A-2 サンプルプログラムのディレクトリ構成
| ディレクトリー/ファイル | 説明 |
|---|---|
| Bank\ | エンタープライズアプリケーションプロジェクトのルート |
| ┣META-INF\ | 管理情報を格納するディレクトリ |
| ┃┣application.xml ┃┃ |
DDファイル (J2EEアプリケーション(EAR)の配備記述子) |
| ┃┗MANIFEST.MF | マニフェストファイル |
| ┣.mymetadata ┃ |
MyEclipseプロジェクトファイル (MyEclipseのプロジェクトの情報を保存) |
| ┗.project | プロジェクト記述ファイル (Eclipseのプロジェクトの情報を保存) |
| Bank_EJB\ | EJBプロジェクトのルート |
| ┣src\ | ソースファイル格納用のディレクトリ |
| ┃┣connectdb\ | パッケージ・フォルダ |
| ┃┃┣Bank.java ┃┃┃ |
Javaソースファイル (EJBプロジェクト用のソースコード) |
| ┃┃┣BankEJB.java ┃┃┃ |
Javaソースファイル (EJBプロジェクト用のソースコード) |
| ┃┃┣BankHome.java ┃┃┃ |
Javaソースファイル (EJBプロジェクト用のソースコード) |
| ┃┃┗InsufficientBalanceException.java ┃┃ |
Javaソースファイル (EJBプロジェクト用のソースコード) |
| ┃┗META-INF | 管理情報を格納するディレクトリ |
| ┃ ┣ejb-jar.xml | DDファイル(EJBの配備記述子) |
| ┃ ┗MANIFEST.MF | マニフェストファイル |
| ┣.classpath ┃ |
クラスパスファイル (プロジェクトのクラスパスを保存) |
| ┣.mymetadata ┃ |
MyEclipseプロジェクトファイル (MyEclipseのプロジェクトの情報を保存) |
| ┗.project | プロジェクト記述ファイル (Eclipseのプロジェクトの情報を保存) |
| Bank_Web\ | Webプロジェクトのルート |
| ┣src\ | ソースファイル格納用のディレクトリ |
| ┃┗connectdb\ | パッケージ・フォルダ |
| ┃ ┣BankBean.java | Javaソースファイル |
| ┃ ┗BankServlet.java | Javaソースファイル |
| ┣WebRoot\ | Webルートフォルダ |
| ┃┣WEB-INF\ ┃┃┃ |
Webクライアントから直接アクセスできないファイルを格納するディレクトリ |
| ┃┃┗web.xml ┃┃ |
DDファイル (Webアプリケーションの配備記述子) |
| ┃┣META-INF | 管理情報を格納するディレクトリ |
| ┃┃┗MANIFEST.MF | マニフェストファイル |
| ┃┣bank.jsp | JSPファイル(IDと数値を入力する画面) |
| ┃┗forward.jsp | JSPファイル(IDと数値をServletに送信) |
| ┣.classpath ┃ |
クラスパスファイル (プロジェクトのクラスパスを保存) |
| ┣.mymetadata ┃ |
MyEclipseプロジェクトファイル (MyEclipseのプロジェクトの情報を保存) |
| ┗.project | プロジェクト記述ファイル (Eclipseのプロジェクトの情報を保存) |
All Rights Reserved. Copyright (C) 2006, 2007, Hitachi, Ltd.