付録L.2 Enterprise Bean(EJB2.0)のサンプルプログラム
Enterprise Bean(EJB2.0)を使用したサンプルプログラムは,次に示すディレクトリに格納されています。
<Application Serverのインストールディレクトリ>\CC\examples\ejb\ejb20
ここでは,サンプルプログラムの一覧,実行例,および各サンプルプログラムの概要について説明します。
- 〈この項の構成〉
(1) Enterprise Bean(EJB2.0)のサンプルプログラム一覧
サンプルプログラムの一覧およびサンプルプログラム実行時の注意事項を示します。サンプルプログラムの一覧は,Enterprise Beanの種類と動作概要をまとめた一覧と,利用する技術,およびリソースをまとめた一覧に分けて示します。
- 注意事項
-
Enterprise Beanのサンプルプログラムは,現在使用している製品のバージョン・リビジョンのものを使用してください。旧バージョン・リビジョンのサンプルプログラムの動作は保証されません。
(a) サンプルプログラム一覧(Enterprise Beanの種類と動作内容)
サンプル名 |
Enterprise Bean種別 |
パーシスタンス |
トランザクション |
動作概要 |
---|---|---|---|---|
Entity Bean |
BMP |
− |
預金や払い戻しに応じて残高を計算し,データベースを更新します。 |
|
Stateful Session Bean |
− |
CMT |
入力数値の合計を計算して,ブラウザ上に表示します。 |
|
Stateful Session Bean |
− |
CMT |
当座預金口座から普通預金口座に資金を移動し,データベースを更新します。 |
|
Stateful Session Bean |
− |
CMT |
購入する本をショッピングカートに入れます。カートにない本をカートから出そうとした場合は,例外を発生させます。 |
|
Stateful Session Bean |
− |
CMT |
割引対象となる金額を超えた場合,割引率を基に割引後の金額を計算します。割引対象となる金額と割引率は,Enterprise Beanの環境エントリで指定します。 |
|
Entity Bean |
CMP2.0 |
− |
商品情報をデータベースに登録し,登録された商品情報を検索します。このサンプルは,CMP 2.0形式のEnterprise Beanを利用します。 |
|
Stateless Session Bean |
− |
CMT |
商品の注文に対する確認メールを送信します。 |
|
Stateless Session Bean |
− |
CMT |
通貨の種類をドルから円,円からユーロに変換します。 |
|
Stateless Session Bean |
− |
CMT |
学生と科目の追加,および受講登録をして,データベースを更新します。 |
|
Entity Bean |
BMP |
− |
||
Stateless Session Bean |
− |
CMT |
通貨の種類をドルから円,円からユーロに変換します。このサンプルは,JSPを利用してブラウザ上に表示します。 |
|
Entity Bean |
BMP |
− |
預金や払い戻しに応じて残高を計算し,データベースを更新します。残高は,JSPを利用してブラウザ上に表示します。 |
|
Stateful Session Bean |
− |
CMT |
入力数値の合計を計算して,ブラウザ上に表示します。このサンプルは,サーブレットからローカルインタフェースを利用してEnterprise Beanを呼び出します。 |
|
Stateless Session Bean |
− |
CMT |
JMSのキューを利用して,メッセージを送受信します。 |
|
Message -driven Bean |
− |
CMT |
||
Entity Bean |
BMP |
− |
注文番号と対応する商品情報を検索して表示します。注文番号と商品情報はデータベースで管理します。 |
|
Entity Bean |
CMP |
− |
商品情報をデータベースに登録し,登録された商品情報を検索します。 |
|
Entity Bean |
BMP |
− |
顧客の追加と,担当する販売員の変更を行い,データベースを更新します。 |
|
Stateful Session Bean |
− |
CMT |
注文に対する商品在庫を計算し,データベースを更新します。在庫が一定の数量を下回った場合,引き当て処理を呼び出します。 |
|
Entity Bean |
BMP |
− |
||
Entity Bean |
BMP |
− |
データベースの部品情報テーブルと部品在庫情報テーブルから,対応する部品の情報と在庫を検索します。 |
|
Stateful Session Bean |
− |
BMT |
銀行用端末機から当座預金のお金を引き出し,残高を計算します。 |
|
Stateless Session Bean |
− |
CMT |
注文を受けた商品の状態,および商品の在庫を更新します。 |
(b) サンプルプログラムの一覧(接続するリソース,クライアントの種類)
サンプルプログラムの一覧と,接続するリソース,クライアントの種類を次の表に示します。
サンプル |
接続するリソース※1 |
クライアントの種類※2 |
|||
---|---|---|---|---|---|
データベース |
メール |
JMS |
EJBクライアントアプリケーション |
Webブラウザ |
|
○ |
− |
− |
○ |
− |
|
− |
− |
− |
− |
○ |
|
○ |
− |
− |
○ |
− |
|
− |
− |
− |
○ |
− |
|
− |
− |
− |
○ |
− |
|
− |
○ |
− |
○ |
− |
|
− |
− |
− |
○ |
− |
|
○ |
− |
− |
○ |
− |
|
− |
− |
− |
− |
○ |
|
○ |
− |
− |
− |
○ |
|
○ |
− |
− |
○ |
− |
|
○ |
− |
− |
○ |
− |
|
○ |
− |
− |
○ |
− |
|
○ |
− |
− |
○ |
− |
|
○ |
− |
− |
○ |
− |
|
○ |
− |
− |
○ |
− |
|
○ |
− |
− |
○ |
− |
|
− |
− |
○ |
○ |
− |
|
○ |
− |
− |
○ |
− |
|
− |
− |
− |
− |
○ |
(c) サンプルプログラムで使用するデータベースの設定
ここでは,サンプルプログラムで使用するデータベースの設定について説明します。
表L-2の「データベース」列に「○」が付いているサンプルプログラムでは,リソースとしてデータベースを利用します。サンプルプログラムを実行する前に,データベースおよびデータベース接続関連の設定を適切にしてください。
なお,データベースとして利用できるのは,OracleまたはHiRDBです。
必要な設定を次に示します。
-
HiRDBを利用する場合,外部キーの指定(参照制約)を有効に設定してください。
設定方法については,マニュアル「HiRDB システム導入・設計ガイド」を参照してください。
-
利用するデータベース種別に従って,サンプルが提供する「createTable_Oracle.sql」(Oracleの場合)または「createTable_HiRDB.sql」(HiRDBの場合)を実行して,データベースのテーブルを初期化してください。なお,HiRDBを利用する場合,外部キーの指定(参照制約)が有効になっていないと,「createTable_HiRDB.sql」の実行に失敗します。
-
サーバ管理コマンドでDB Connectorの設定をします。
DB Connectorは,「DBConnector_Oracle_CP.rar」または「DBConnector_HiRDB_Type4_CP.rar」を利用することをお勧めします。「DBConnector_Oracle_XA.rar」または「DBConnector_HiRDB_Type4_XA.rar」を利用した場合は,ライトトランザクション機能が無効になるように設定してからJ2EEサーバを起動して,DB Connectorを設定します。ライトトランザクション機能は,usrconf.propertiesのejbserver.distributedtx.XATransaction.enabledキーにtrueを指定すると無効になります。
-
リソースのリンクを解決します。
リンクの解決には,サンプルで提供するアプリケーション属性ファイル「cosminexus.xml」を利用します。「cosminexus.xml」の<resource-ref>タグにリソースの表示名を指定して,サーバ管理コマンドを利用して設定してください。リソースのリンク解決をしてから,アプリケーションのデプロイ操作をしてください。
-
サンプルプログラムのうち,「product」と「cmp20product」では,「cosminexus.xml」の<schema-name>タグに「user1」が設定されています。利用するデータベース環境に応じて,適切な値に変更してからアプリケーションのデプロイ操作を実行してください。
-
サンプルプログラムのうち,「teller」の実行にHiRDBを使用する場合,TellerEJB.javaファイル中の日付指定関数を指定している個所を,HiRDB用に書き換えてコンパイルしてください。
(d) サンプルプログラムで使用するメールの設定
ここでは,サンプルプログラムで使用するメールの設定について説明します。
表L-2の「メール」列に「○」が付いているサンプルプログラムでは,リソースとしてメールを利用します。サンプルプログラムを実行する前に,メールサーバへの接続関連の設定を適切にしてください。
必要な設定を次に示します。
-
EJBクライアントアプリケーションのソースファイル(ConfirmerClient.java)に,受信メールアドレスがコーディングされています。この個所を適切な受信メールアドレスに書き換えてからコンパイルしてください。
-
サーバ管理コマンドでメールコンフィグレーションを設定する必要があります。サーバ管理コマンドの利用方法については,マニュアル「アプリケーションサーバ アプリケーション設定操作ガイド」の「6.3 メールコンフィグレーションの設定」を参照してください。
-
リソースのリンクを解決します。ただし,メールコンフィグレーションの表示名を「Cosminexus_SMTP_Server」と定義した場合は,リンクの解決は不要です。これ以外の表示名を定義した場合は,リンクを解決してください。
リンクの解決には,サンプルで提供するアプリケーション属性ファイル「cosminexus.xml」を利用します。「cosminexus.xml」の<resource-ref>タグにリソースの表示名を指定して,サーバ管理コマンドで設定してください。リソースのリンク解決をしてから,アプリケーションのデプロイ操作をしてください。
(e) サンプルプログラムで使用するJMSの設定
ここでは,サンプルプログラムで使用するJMSの設定について説明します。
表L-2の「JMS」列に「○」が付いているサンプルプログラムでは,リソースとしてJMSを利用します。サンプルプログラムを実行する前に,JMSへの接続関連の設定を適切にしてください。
必要な設定を次に示します。
-
JMSとしてTP1/Message Queue - Accessを使用するため,あらかじめTP1/Message Queue - Accessをインストールしておきます。また,OpenTP1および TP1/Message Queueのサーバ実行環境もあらかじめ準備しておきます。
-
サーバ管理コマンドによって,TP1/Message Queue - Accessの設定をします。
ライトトランザクション機能を無効にしてJ2EEサーバを起動してから,TP1/Message Queue - Accessの設定をします。なお,ライトトランザクション機能は,usrconf.propertiesのejbserver.distributedtx.XATransaction.enabledキーにtrueを指定すると無効になります。
また,TP1/Message Queue - Accessのトランザクションサポートレベルを,「XATransaction」にしてください。
-
リソースのリンクを解決します。ただし,TP1/Message Queue - Accessのデフォルトの表示名を変更しないで,かつ,キュー定義ファイルに表示名が「QUEUE1」となるキューを定義している場合,リンクの解決は不要です。TP1/Message Queue - Accessのデフォルトの表示名を変更した場合や,キュー定義ファイルに表示名が「QUEUE1」となるキューを定義していない場合は,リンクの解決が必要です。
リンクの解決には,サンプルで提供するアプリケーション属性ファイル「cosminexus.xml」を利用します。「cosminexus.xml」の<resource-ref>タグ,<resource-env-ref>タグ,および<message-ref>タグにリソースの表示名を指定して,サーバ管理コマンドで設定してください。リソースのリンク解決をしてから,アプリケーションのデプロイ操作をしてください。
(f) サンプルプログラムのクライアントの種類
サンプルプログラムのクライアントには,EJBクライアントアプリケーションと,Webブラウザで表示するアプリケーションの2種類があります。
-
表L-2の「EJBクライアントアプリケーション」列に「○」が付いているサンプルプログラムは,EJBクライアントアプリケーションです。サンプルとして提供されている「testClient.bat」を使用して,クライアントアプリケーションを開始してください。
-
表L-2の「Webブラウザ」列に「○」が付いているサンプルプログラムは,Webブラウザから操作するWebアプリケーションです。クライアントから操作する場合は,Webブラウザを起動して,次のURLを指定してください。
http://<マシン名>:<ポート番号>/<ContextRoot>/<ターゲットファイル>
例えば,ローカルホストで動作するサンプル「adder」の場合は,次のように指定します。
http://localhost/adder/adder_war/adder.html
(2) Enterprise Bean(EJB2.0)のサンプル実行手順
converterを例に,サンプルの実行例を示します。converterは,クライアントのJavaアプリケーションからEnterprise Beanを呼び出すプログラムです。データベースなどのリソースは利用しません。リソースを利用する場合は,ここで示す手順に加え,リソースにアクセスできる環境を整える必要があります。リソースの設定方法については,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.3 リソース接続」を参照してください。
(a) converterの概要
通貨の種類をドルから円,円からユーロに変換します。converterの構成を次に示します。
(b) コンパイル
サンプルで提供するバッチファイル(compileBean.batおよびcompileClient.bat)を使用して,Enterprise Beanとクライアントをコンパイルします。このバッチファイルで,アプリケーション(.earファイル)が作成されます。
C:\>cd C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\converter C:\Program Files\Hitachi\Cosminexus\CC\...\converter>compileBean C:\Program Files\Hitachi\Cosminexus\CC\...\converter> C:\Program Files\Hitachi\Cosminexus\CC\...\converter>compileClient C:\Program Files\Hitachi\Cosminexus\CC\...\converter>
(c) J2EEサーバのセットアップ
「付録L.1(1) J2EEサーバのセットアップ」を参照してください。
(d) J2EEサーバのカスタマイズ
「付録L.1(2) J2EEサーバのカスタマイズ」を参照してください。
(e) J2EEサーバの起動
「付録L.1(3) J2EEサーバの起動」を参照してください。
(f) アプリケーションのデプロイ
サンプルで提供するバッチファイル(deployApp.bat)を使用して,アプリケーションをデプロイします。このバッチファイルでは,アプリケーションのJ2EEサーバへのインポートから,アプリケーションの設定,開始,EJBのスタブおよびインタフェースファイルの取得までが実行されます。
このバッチファイルで実行される処理の内容を示します。
-
アプリケーションのインポート,設定,開始,一覧表示
実行内容については,「付録L.1(5) アプリケーションのインポート,設定,および開始」を参照してください。
-
Enterprise Beanのスタブ・インタフェースファイルの取得
cjgetsubsjarコマンドで,Enterprise Beanのスタブとインタフェースを取得します。
(g) アプリケーションの実行
サンプルで提供するバッチファイル(testClient.bat)を使用して,アプリケーションを実行します。実行後,EJBクライアントアプリケーションの起動コンソール画面に次のように表示されれば成功です。
C:\>cd C:\Program Files\Hitachi\Cosminexus\CC\examples\ ejb\ejb20\converter C:\Program Files\Hitachi\Cosminexus\CC\examples\ ejb\ejb20\converter>testClient KDJE40053-I The cjclstartap command will now start. (directory for the user definition file = C:\Program Files\Hitachi\Cosminexus\CC\examples\ ejb\ejb20\converter, PID = 3684) 12160.0 0.77 KDJE40054-I The cjclstartap command was stopped. (PID = 3684, exit status = 0) C:\Program Files\Hitachi\Cosminexus\CC\examples\ ejb\ejb20\converter>
(h) アプリケーションのアンデプロイ
「付録L.1(6) アプリケーションの停止,削除」を参照してください。
(i) J2EEサーバの終了
「付録L.1(7) J2EEサーバの終了」を参照してください。
(3) Enterprise Bean(EJB2.0)のサンプルの概要
Enterprise Bean(2.0)のサンプルの概要,構成,実行例を示します。なお,必要な設定については,「付録L.2(1)(b) サンプルプログラムの一覧(接続するリソース,クライアントの種類)」を参照してください。
(a) accountの概要
預金や払い戻しに応じて残高を計算し,銀行口座テーブルを更新します。accountの構成を次に示します。
accountの実行例を示します。
C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\account>testClient KDJE40053-I The cjclstartap command will now start. (directory for the user definition file = C:\Program Files\Hitachi\Cosminexus\CC\examples\ ejb\ejb20\account, PID = 3684) balance = 68.25 balance = 32.55 456: 44.77 730: 19.54 268: 100.07 456: 44.77 836: 32.55 KDJE40054-I The cjclstartap command was stopped. (PID = 3684, exit status = 0) C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\account>
(b) adderの概要
ブラウザから入力された数値の合計を計算します。adderの構成を次に示します。
実行時には,ブラウザを起動し,URLに次の文字列を指定します。
http://<マシン名>:<ポート番号>/<ContextRoot>/adder.html
J2EEサーバのNIO HTTPサーバに直接アクセスする場合,デフォルトでは次のURLを指定します。
http://localhost:8008/adder/adder_war/adder.html
adderの実行例を示します。
(c) bankの概要
当座預金口座から普通預金口座に資金を移動します。資金はデータベースで管理し,資金移動時に,対応する当座預金口座テーブルと普通預金口座テーブルを更新します。bankの構成を次に示します。
bankの実行例を示します。
C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\bank>testClient KDJE40053-I The cjclstartap command will now start. (directory for the user definition file = C:\Program Files\Hitachi\Cosminexus\CC\examples\ ejb\ejb20\bank, PID = 3684) checking: 60.0 saving: 540.0 KDJE40054-I The cjclstartap command was stopped. (PID = 3684, exit status = 0) C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\bank>
(d) cartの概要
本を購入するショッピングカートです。3冊の本をカートに入れ,カートにない本1冊をカートから出そうとして「BookException」を発生させます。cartの構成を次に示します。
cartの実行例を示します。
C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\cart>testClient KDJE40053-I The cjclstartap command will now start. (directory for the user definition file = C:\Program Files\Hitachi\Cosminexus\CC\examples\ ejb\ejb20\cart, PID = 3684) The Martian Chronicles 2001 A Space Odyssey The Left Hand of Darkness Caught a BookException: Alice in Wonderland not in cart. KDJE40054-I The cjclstartap command was stopped. (PID = 3684, exit status = 0) C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\cart>
(e) checkerの概要
割引対象となる金額を超えた場合,割引率を基に割引後の金額を計算します。割引対象となる金額と割引率は,Enterprise Beanの環境エントリで指定します。checkerの構成を次に示します。
checkerの実行例を示します。
C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\checker>testClient KDJE40053-I The cjclstartap command will now start. (directory for the user definition file = C:\Program Files\Hitachi\Cosminexus\CC\examples\ ejb\ejb20\checker, PID = 3684) discount = 4200.0 KDJE40054-I The cjclstartap command was stopped. (PID = 3684, exit status = 0) C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\checker>
(f) cmp20productの概要
商品情報をデータベースに登録し,登録された商品情報を検索します。このサンプルは,CMP 2.0形式のEnterprise Beanを利用します。cmp20productの構成を次に示します。
cmp20productの実行例を示します。
C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\cmp20product>testClient KDJE40053-I The cjclstartap command will now start. (directory for the user definition file = C:\Program Files\HITACHI\Cosminexus\CC\examples\ ejb\ejb20\cmp20product, PID = 3684) Ceramic Dog: 10.0 Ceramic Dog: 14.0 Chrome Fish: 22.0 999: Ivory Cat 19.0 789: Ivory Cat 33.0 123: 14.0 456: 13.0 999: 19.0 KDJE40054-I The cjclstartap command was stopped. (PID = 3684, exit status = 0) C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\cmp20product>
(g) confirmerの概要
商品の注文に対する確認メールを送信します。confirmerの構成を次に示します。
confirmerのクライアント(メール送信側)の実行例を示します。
C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\confirmer>testClient KDJE40053-I The cjclstartap command will now start. (directory for the user definition file = C:\Program Files\Hitachi\Cosminexus\CC\examples\ ejb\ejb20\confirmer, PID = 3684) KDJE40054-I The cjclstartap command was stopped. (PID = 3684, exit status = 0) C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\confirmer>
クライアント実行後,ConfirmerClient.javaで指定したアドレスにメールが送信されます。受信されるメールの例を示します。
件名:"Test Message from ConfirmerEJB" 文面: Thank you for your order. We received your order on 2002/03/18 12:35.
(h) converterの概要
converterについては,「付録L.2(2) Enterprise Bean(EJB2.0)のサンプル実行手順」を参照してください。
(i) enrollerの概要
学生と科目の追加,および受講登録をして,対応する学生情報テーブル,科目テーブル,受講登録情報テーブルを更新します。enrollerの構成を次に示します。
enrollerの実行例を示します。
C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\enroller>testClient KDJE40053-I The cjclstartap command will now start. (directory for the user definition file = C:\Program Files\HITACHI\Cosminexus\CC\examples\ ejb\ejb20\enroller, PID = 3684) Denise Smith: 220 Power J2EE Programming 333 XML Made Easy 777 An Introduction to Java Programming An Introduction to Java Programming: 823 Denise Smith 456 Joe Smith 388 Elizabeth Willis KDJE40054-I The cjclstartap command was stopped. (PID = 3684, exit status = 0) C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\enroller>
(j) jsptagの概要
通貨の種類をドルから円,円からユーロに変換します。変換した結果は,JSPを利用して,ブラウザに表示します。jsptagの構成を次に示します。
実行時には,ブラウザを起動し,URLに次の文字列を指定します。
http://<マシン名>:<ポート番号>/<ContextRoot>/Converter.jsp
J2EEサーバのNIO HTTPサーバに直接アクセスする場合,デフォルトでは次のURLを指定します。
http://localhost:8008/jsptag/converter_war/Converter.jsp
jsptagの実行例を示します。
(k) jsptobeanの概要
預金や払い戻しに応じて残高を計算し,データベースを更新します。残高は,JSPを利用してブラウザ上に表示します。jsptobeanの構成を次に示します。
実行時には,ブラウザを起動し,URLに次の文字列を指定します。
http://<マシン名>:<ポート番号>/<ContextRoot>/Account.jsp
J2EEサーバのNIO HTTPサーバに直接アクセスする場合,デフォルトでは次のURLを指定します。
http://localhost:8008/jsptobean/account_war/Account.jsp
jsptobeanの実行例を示します。
(l) localadderの概要
入力数値の合計を計算して,ブラウザ上に表示します。このサンプルは,サーブレットからローカルインタフェースを利用してEnterprise Beanを呼び出します。localadderの構成を次に示します。
実行時には,ブラウザを起動し,URLに次の文字列を指定します。
http://<マシン名>:<ポート番号>/<ContextRoot>/adder.html
J2EEサーバのNIO HTTPサーバに直接アクセスする場合,デフォルトでは次のURLを指定します。
http://localhost:8008/localadder/localadder_war/adder.html
localadderの実行例を示します。
(m) messageの概要
Session BeanからJMSのQueueへ送信したメッセージを,Message-driven Beanで受信します。messageの構成を次に示します。
messageのクライアントの実行例を示します。
C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\message>testClient KDJE40053-I The cjclstartap command will now start. (directory for the user definition file = C:\Program Files\HITACHI\Cosminexus\CC\examples\ ejb\ejb20\message, PID = 3684) sending message=MY MESSAGE KDJE40054-I The cjclstartap command was stopped. (PID = 3684, exit status = 0) C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\message>
クライアント実行後,メッセージの送受信が正常に完了した場合は,J2EEサーバの起動コンソール上に次のように表示されます。
... MessageBean: onMessage() MessageBean: received message=MY MESSAGE ...
(n) orderの概要
注文番号と対応する商品情報を検索して表示します。注文番号と商品情報は,それぞれ注文情報テーブルと商品情報テーブルで管理します。orderの構成を次に示します。
orderの実行例を示します。
C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\order>testClient KDJE40053-I The cjclstartap command will now start. (directory for the user definition file = C:\Program Files\Hitachi\Cosminexus\CC\examples\ ejb\ejb20\order, PID = 3684) about to create 123 1 p23 12.0 123 2 p67 89.0 123 3 p11 41.0 123 456 KDJE40054-I The cjclstartap command was stopped. (PID = 3684, exit status = 0) C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\order>
(o) productの概要
商品名や価格などの商品情報をデータベースに登録し,登録された商品情報を検索します。商品情報は,商品情報テーブルで管理します。productの構成を次に示します。
productの実行例を示します。
C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\product>testClient KDJE40053-I The cjclstartap command will now start. (directory for the user definition file = C:\Program Files\HITACHI\Cosminexus\CC\examples\ ejb\ejb20\product, PID = 3684) Ceramic Dog: 10.0 Ceramic Dog: 14.0 Chrome Fish: 22.0 999: Ivory Cat 19.0 789: Ivory Cat 33.0 123: 14.0 456: 13.0 999: 19.0 KDJE40054-I The cjclstartap command was stopped. (PID = 3684, exit status = 0) C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\product>
(p) salesrepの概要
顧客の追加と,担当する販売員の変更を行い,データベースを更新します。二つのEnterprise Beanを連携し,顧客テーブルと販売員テーブルへの検索と更新を行います。salesrepの構成を次に示します。
salesrepの実行例を示します。
C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\salesrep>testClient KDJE40053-I The cjclstartap command will now start. (directory for the user definition file = C:\Program Files\HITACHI\Cosminexus\CC\examples\ ejb\ejb20\salesrep, PID = 3684) customerId = 221 customerId = 388 customerId = 456 customerId = 844 987: Mary Jackson 221: Alice Smith 388: Bill Williamson 456: Joe Smith 844: Buzz Murphy KDJE40054-I The cjclstartap command was stopped. (PID = 3684, exit status = 0) C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\salesrep>
(q) shipperの概要
注文に対する商品在庫を計算し,データベースを更新します。在庫が一定の数量を下回った場合,引き当て処理を呼び出します。二つのEnterprise Beanを連携し,商品在庫情報テーブルへの検索と更新を行います。shipperの構成を次に示します。
shipperの実行例を示します。
C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\shipper>testClient KDJE40053-I The cjclstartap command will now start. (directory for the user definition file = C:\Program Files\HITACHI\Cosminexus\CC\examples\ ejb\ejb20\shipper, PID = 3684) KDJE40054-I The cjclstartap command was stopped. (PID = 3684, exit status = 0) C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\shipper>
shipperの実行後,J2EEサーバの起動コンソール上に次のように表示されます。
... ShipperEJB: ejbCreate() ShipperEJB: shipItem() StockEJB: updateOnHand() StockEJB: reorderNeeded() ...
(r) storagebinの概要
データベースから部品の情報と在庫を検索します。二つのEnterprise Beanを連携し,部品情報テーブルと部品在庫情報テーブルへの検索を行います。storagebinの構成を次に示します。
storagebinの実行例を示します。
C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\storagebin>testClient KDJE40053-I The cjclstartap command will now start. (directory for the user definition file = C:\Program Files\HITACHI\Cosminexus\CC\examples\ ejb\ejb20\storagebin, PID = 3684) 777 388 500 1.0 Duct Tape KDJE40054-I The cjclstartap command was stopped. (PID = 3684, exit status = 0) C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\storagebin>
(s) tellerの概要
銀行用端末機から当座預金を引き出し,残高を計算します。データベースの(銀行用端末機の)入金情報テーブルと取引履歴情報テーブルに対し,取引内容を追加します。
tellerの構成を次に示します。
tellerの実行例を示します。
C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\teller>testClient KDJE40053-I The cjclstartap command will now start. (directory for the user definition file = C:\Program Files\HITACHI\Cosminexus\CC\examples\ ejb\ejb20\teller, PID = 3684) checking = 500.0 checking = 440.0 KDJE40054-I The cjclstartap command was stopped. (PID = 3684, exit status = 0) C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\teller>
(t) warehouseの概要
注文を受けた商品の状態,および商品の在庫を更新します。データベースの商品情報テーブルと在庫情報テーブルのそれぞれを更新します。warehouseの構成を次に示します。
warehouseの実行例を示します。
C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\warehouse>testClient KDJE40053-I The cjclstartap command will now start. (directory for the user definition file = C:\Program Files\HITACHI\Cosminexus\CC\examples\ ejb\ejb20\warehouse, PID = 3684) status = shipped KDJE40054-I The cjclstartap command was stopped. (PID = 3684, exit status = 0) C:\Program Files\Hitachi\Cosminexus\CC\examples\ejb\ejb20\warehouse>