ホーム
ニュース
Coconuts
ドキュメント
ダウンロード
チュートリアル
ライセンス
お問い合わせ
訪問者数:6097人
|
Coconuts チュートリアル |
Coconutsチュートリアル
このページでは、初めてCoconutsを使う方を対象に環境設定から実際にCoconutsを使ったサンプルアプリケーションを構築します。
--目次--
■Step 0 -環境作成-
■Step 1 -Hello Coconuts-
■Step 2 -ログ拡張機能を使う-
■Step 3 -QueueInterfaceを使ったキューの登録-
■Step 4 -キューの設定をXMLに置き換える-
■Step 5 -カードのデータを表示する-
■Step 4 -キューの設定をXMLに置き換える-
Step3ではXMLに置き換える前段階として、キューと関連するActionをひとかたまりにする方法を紹介しました。
Step4では実際にキューと関連するActionをXMLに置き換えてみます。
CoconutsにはCoconutsCfgというXML設定用に作られたクラスがあります。
Coconutsは、CoconutsCfgインスタンスをSpringFrameworkを使うことによってXMLから取得します。
Coconuts用XML設定ファイルの制約事項は、このようになっています。
・ファイル名は"coconuts.cfg"
・"coconuts.cfg"はクラスパスの通る場所にあること
・"coconuts.cfg"はCoconutsインスタンスが最初に呼ばれた時点でロードを行う。
・SpringFrameworkを使用してロードを行い、bean名"coconutscfg"をCoconutCfgインスタンスとしてロードする。
ダウンロードしたCoconuts.zipに"coconuts.cfg"が入っています。
このファイルをEclipseのソースフォルダにコピーしてください。
まずは"coconuts.cfg"の説明をします。
"coconuts.cfg"の5行目にこのような記述があります。
ここはCoconutsが管理するキューについて記述します。
ひとかたまりのキューを登録するには、"<list>"から"</list>"で囲まれた中に"<value><ref bean="キューのBean名"></ref></value>"を追加します。
19行目にこのような記述があります。
これは"Queue"クラスを使ったひとかたまりのキューを記述するためのテンプレートになります。
これはFelicaカードの情報を自動的に読み取るキューを使用するためのテンプレートになります。
これはStep2で使ったロギング拡張機能のためのテンプレートになります。
これはActionが失敗した際にエラーキューに入るイベントをファイルで保管し、後のリカバリを可能にするための拡張アクションのテンプレートになります。
これはhibernateを使用したデータベース登録のための拡張アクションのテンプレートになります。
これはObjectStream通信用の拡張キューのテンプレートです。
送信側は「ObjectStreamSendAction」を使用します。
これはObjectStream通信用の拡張Actionのテンプレートです。
「ObjectStreamQueueServelt」へイベントを送信するために使用します。
実際にXML設定ファイルを使ってみましょう。
今回は「Coconuts設定」「Queueテンプレート」「ロギング拡張」を使います
また、HelloAction用のXMLを記述します。
ロギング拡張用のXMLを作ってみましょう。
まずはロギング拡張テンプレート部分のコメントを外してください。
そして、"-- LogMessageCreatorを実装したクラス名 --"の部分にStep2で作った「HelloLogMessageCreator」のクラス名を記述します。
このようになります
次にHelloActionのXMLを作ってみましょう。
SpringFrameworkではインスタンスを生成するにはこのように定義します。
インスタンスは<bean>〜</bean>までに記述します。
"id="にはBean名を記入します。
"class="にはクラス名を記入します。
<property>〜</property>にはインスタンスの設定値を記入します。
"name="にはsetterメソッドの"set"無しかつ、先頭小文字の文字列を記入します。
<property>〜</property>の間には実際の設定値を記入します。
また、<bean>〜</bean>として設定したインスタンスは"<ref bean="Bean名">"として代入できます。
詳細はSpringFrameworkを参照してください。
今回のHelloActionはBeam名を"helloAction"とするとこのようになります。
ではこれらをひとかたまりのキューにします。
「Queueテンプレート」のコメントを外してください。
"-- QueueのBean名 --"を"helloQueue"にしてください。
"-- キュー名 --"を"helloQueue"にしてください
"-- エラーキュー名 --"はnullですので"<null/>"と記入します。
Actionは<list>〜</list>の間に記入します。
今回はHelloActionとロギング拡張を使用しますので、Bean名"helloAction"と"loggingAction"を追加します。
「Queueテンプレート」はこのようになります。
最後にCoconutsの設定です。
「Coconuts設定」の<list>〜</list>の間にQueueを追加します。
今回は、QueueのBean名が"helloQueue"ですのでこのようになります。
これでXMLの設定は終了です。
確認のため使用する箇所のみのXML設定ファイル(coconuts.cfg)を記述します。
これでキューとActionの関連は全てXMLに移行しましたので、HelloMain.javaはこうなります
では実際に起動してみましょう。
Step2と同様の結果が出ているはずです。
|
|