S2Flex2を試してみた。(1)

環境は以下のとおり。

  • Dolteng0.18.0
  • Eclipse3.2.0
  • JDK1.5.0_08
  • Tomcat 5.5.17

Eclipseの新規作成から、Chura Project を選んで、S2Flex2 + S2Dao を選択してプロジェクトを作成。
Root Package Name はとりあえず、s2flex2.test とする。


プロジェクトを作成すると、s2関連のjarが見つからないといわれた。

ビルド・パスのエラーが解決されるまで、プロジェクトをビルドできません
プロジェクト s2flex2 に、必要なライブラリー 'WEB-INF/lib/commons-logging-1.0.4.jar' がありません。
プロジェクト s2flex2 に、必要なライブラリー 'WEB-INF/lib/geronimo-jsp_2.0_spec-1.0.jar' がありません。
プロジェクト s2flex2 に、必要なライブラリー 'WEB-INF/lib/geronimo-jta_1.0.1B_spec-1.0.jar' がありません。
プロジェクト s2flex2 に、必要なライブラリー 'WEB-INF/lib/geronimo-servlet_2.4_spec-1.0.jar' がありません。
プロジェクト s2flex2 に、必要なライブラリー 'WEB-INF/lib/h2-2007-01-30.jar' がありません。
プロジェクト s2flex2 に、必要なライブラリー 'WEB-INF/lib/s2-dao-1.0.41-SNAPSHOT.jar' がありません。
プロジェクト s2flex2 に、必要なライブラリー 'WEB-INF/lib/s2-dao-tiger-1.0.41-SNAPSHOT.jar' がありません。
プロジェクト s2flex2 に、必要なライブラリー 'WEB-INF/lib/s2-extension-2.4.10.jar' がありません。
プロジェクト s2flex2 に、必要なライブラリー 'WEB-INF/lib/s2-flex2-1.0.1-SNAPSHOT.jar' がありません。
プロジェクト s2flex2 に、必要なライブラリー 'WEB-INF/lib/s2-framework-2.4.10.jar' がありません。
プロジェクト s2flex2 に、必要なライブラリー 'WEB-INF/lib/s2-tiger-2.4.10.jar' がありません。

S2関連のjarがないと言っているので、WEB-INF/lib にjarを入れるために、各種最新版を落としてきたのだが、要求されているバージョンと微妙に違う。。

  • S2Container 2.4.11
  • S2Tiger 2.4.11
  • S2Dao 1.0.41 RC
  • S2DaoTiger 1.0.41 RC
  • S2Flex2 1.0.1
  • S2Flex2Tiger 1.0.0

けど、落とし直すのがめんどくさいので、ビルドパスを設定しなおして、エラーを消去。

で、Doltengが生成したものをみると、以下のようなディレクトリが作られている。

  • bin ・・・ Flex2のソースをコンパイルした結果(swfやswc)が入る。
  • html-template ・・・ Flex2コンパイル時に使用されるテンプレート
  • WEB-INF/src/main/flex
    • Flex2のソースが入っている。デフォで Main.mxml が作られている。ルートパッケージ(s2flex2.test)の下に、dto と web というパッケージが作られている。(中は空)
  • WEB-INF/src/main/java
    • Javaのソースを入っている。ルートパッケージの下にconverter,dao,dto,dxo,entity,helper,interceptor,logic,service,validator,web が作られている。
  • WEB-INF/src/main/resources
    • 設定ファイル(dicon)が入っている。

まずは、Main.mxmlを表示してみよう。
Tomcat を起動したら、H2のライブラリがないと怒られる。

org.seasar.framework.beans.IllegalPropertyRuntimeException: [ESSR0059]クラス(org.seasar.extension.dbcp.impl.XADataSourceImpl)のプロパティ(driverClassName)の設定に失敗しました。理由はorg.seasar.framework.exception.ClassNotFoundRuntimeException: [ESSR0044]クラスが見つかりませんでした。詳細はjava.lang.ClassNotFoundException: org.h2.Driver

ビルドパスを設定しなおしたときに、S2の最新版にH2が入っていると思って特に確認しなかったんだけど、違うのか。。あぅ。
落とすのがめんどくさいので、SuperAgile で Chura Project を作ったときに、生成された h2-2007-01-30.jar をコピーしてWEB-INF/libへ入れることにする。


再度Tomcatを起動。
今度はエラーがでないで起動した。今度は大丈夫そうだ。


http://localhost:8080/s2flex2/bin/Main.html
にアクセスすると、Hello World と表示された。