(5)S2Factory for FDS2を使ってみる(おさらい+α)

前回から結構時間が空きましたので、おさらいしながら進めます。

おさらい

1)環境を用意する。
Eclipse+FlexBuilderPlugin+TOMCAT+FDS2改めLCDS2.5をインストール。

2)プロジェクトを作成する。
Flexデータサービスプロジェクト+Tomcatプロジェクトを作成する。

3)Flexのコーディング&javaのコーディング。
Flex側のPGは、FlexDataServiceを使った場合と全く同じ方法で実装する。
java側は、S2Flex2コンポーネントとして作成する。

前回はここまでやりました。

とくにjava側は、S2のコンポーネントとして作成しなくても
LCDSでリモートオブジェクトできるので
先に、LCDSでリモートオブジェクトできることを確認しておくのがベスト。

さらに、java側をS2化(コンポーネント化)する際は、S2TestCaseでテストしておくとなお良し。

普通のjavaプロジェクトをS2化する際は、Doltengで空プロジェクトを作成して、そこからjarとdiconをコピペで移してくるのが楽。
空プロジェクトを作成するときは、
ルートパッケージを揃えておくとdiconファイルがそのまま使えるので便利。
(もちろんあとで指定してもいいです:convention.diconのaddRootPackageName)

ただ、Eclipse3.1系(Dolteng0.16系)とEclipse3.2系(Dolteng0.18.x)の間でのワークスペースやプロジェクトの移行はちょっと危険が伴うのでやめた方が無難です。


4)設定ファイルを記述

今回は、設定ファイルを記述してみます。

公式サイトに使い方が詳しく書かれていますのでそれを参考に進めます。
AKABANA - S2Factory - FDS2(Beta2)


4-1)web.xmlの更新

filterを追加します。
サンプルが添付されていますのでそれを使用するのもいいかもです。
今回は、web-appタグ内の一番下に追記しました。

   <filter>
       <filter-name>s2filter</filter-name>
       <filter-class>org.seasar.framework.container.filter.S2ContainerFilter</filter-class>
   </filter>
   <filter-mapping>
       <filter-name>s2filter</filter-name>
       <url-pattern>/*</url-pattern>
   </filter-mapping>

※えっと、url-patternのスラッシュはもちろん半角のほうです。レイアウトが崩れたので。。。
※2007/07/17:追記 ハイライト記法を覚えました。


4-2)services-config.xmlの更新

factoryを使用する設定を行います。
ファイルの一番下に追記しました。

<factories>
	<factory id="s2" class="org.seasar.flex2.rpc.remoting.service.fds2.factory.Seasar2Factory" />
</factories>

4-3)remoting-config.xmlの更新
Flex側から呼び出したいクラスを記述します。

普通は、classを指定するのですが、タグを使用するようです。

  <destination id="addressService">
  <properties>
  <factory>s2</factory>
  </properties>
  </destination>

さて、すべて終わったので、実行してみます。

んー

Tomcatの起動でこけてる。。

どこか間違ったかも・・・

LCDS2.5だからかな〜?


というわけで、次回は、
LCDSに添付の開発ガイド(lcds_dev_guide.pdf 英語)のCHAPTER14 Using Factoriesを読んでみます。

その次の回は、ソースを読んでみます。

以上今日はここまで