S2Dxoで勘違い・・・

ビーンからビーンとかの変換で、ネストされたビーンで1階層までなら見てくれると、漠然とした理解をしていたのが勘違いの始まりだった・・・。1階層まで掘り下げてみてくれるのは、送り元のビーンの方なのね。コードを見て気がついた。まぁ、はまったけど、S2Dxo の理解が深まったから良しとしておこう。

オープンソース点から見るN2広場

オープンソースという観点からN2広場を考えます。N2広場ではどんどんオープンソースプロダクトを採用していきたいと考えています。っで、まずは、主に、

  • Jetspeed2/PALポータルって、使われているの(使えるの)?
  • Teeda(Seasar2)って、本当にポートレットで使えるの?

というのに、答えていければと考えてます。

まず、Jetspeed2/PALポータルですが、N2広場はそれらベースになっています。素のJetspeed2からこういうポータルを作るということも考えられますが、j2-adminでは管理できるユーザー数に限界があるので、PALポータルにある pal-admin でないと厳しいかと。基本的に、N2広場で利用しているソースコードは、Jetspeed2/PALポータルにコミットしてオープンになっているので、N2広場のようなパブリックなポータルを作ろうと思えば、PALポータルをベースに作成可能です。

次に、Teeda(Seasar2)に関してですが、現在、動かしている 3 つのサービス(グッジョブ、DesIT、Outatime)は、Teedaベース作りました(そんなに複雑なアプリではないですけど)。普通に JSR 168 のポートレットとして、Jetspeed2/PALポータル上で動いてます。Teeda で作成できるおかけで、さっくり作ることができました 🙂 さすがに、素のポートレット API で作ると、大変ですし・・・。そんな感じで、ポートレットとして、Teedaアプリも作れるわけなのです(ただ、JavaScriptを使うようなコンポーネントについては、id問題があるので検討が必要)。

以上のような感じで、N2広場を通しても、オープンソースの開発に貢献していければ、と思います。

テストエラー

ちょっと確認する必要があったので、S2Containerのtrunkをビルドしてみる。

-------------------------------------------------------------------------------
Test set: org.seasar.framework.container.autoregister.ComponentAutoRegisterTest
-------------------------------------------------------------------------------
Tests run: 4, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.932 sec <<< FAILURE!
testZipFileStrategy(org.seasar.framework.container.autoregister.ComponentAutoRegisterTest)  Time elapsed: 0.311 sec  <<< FAILURE!
junit.framework.ComparisonFailure: expected:</home/[taro/.m2/repository]/junit/junit/3.8.2/j...> but was:</home/[maven2/repository]/junit/junit/3.8.2/j...>
at junit.framework.Assert.assertEquals(Assert.java:81)
at junit.framework.Assert.assertEquals(Assert.java:87)
at org.seasar.framework.container.autoregister.ComponentAutoRegisterTest.testZipFileStrategy(ComponentAutoRegisterTest.java:129)

という感じで怒られる。そういや、以前も怒られたなっと思い、今日は確認してみることにする。コード的には特に問題ない気がするので、ふと考えてみると、そういえば、$HOME/.m2/repository をシンポリックリンクにしてました(^^; つまり、JarFileのgetNameがシンボリックリンクしているところの元のパスを返すのね。まぁ、今まで、Maven2の設定ファイルを変えるのが面倒だっただけなので、これを機に ~/.m2/settings.xml に localRepository 要素で指定して無事解決。