ビーンからビーンとかの変換で、ネストされたビーンで1階層までなら見てくれると、漠然とした理解をしていたのが勘違いの始まりだった・・・。1階層まで掘り下げてみてくれるのは、送り元のビーンの方なのね。コードを見て気がついた。まぁ、はまったけど、S2Dxo の理解が深まったから良しとしておこう。
カテゴリー: Seasar
オープンソース点から見る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 要素で指定して無事解決。