ホーム
ニュース

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と同様の結果が出ているはずです。



Copyright (c) 2006, VEST.SOFTWARE
All rights reserved