sa-struts-archetypeでmobylet対応

sa-struts-archetype 1.0.4-sp7.1 をリリースしました。変更点は mobylet 対応です。use-mobylet を true としてあげれば、mobylet 対応の SAStruts プロジェクトがさっくり作れます。実行方法は

mvn archetype:generate -DarchetypeRepository=https://www.seasar.org/maven/maven2/ \
-DarchetypeGroupId=org.seasar.sastruts -DarchetypeArtifactId=sa-struts-archetype \
-DarchetypeVersion=1.0.4-sp7.1 -DgroupId=sample.app -DartifactId=sample \
-Dversion=0.1.0 -Duse-mobylet=true

というような感じです。groupId、artifactId、version は適当に変えてください。あとは、DBFlute も使いたければ、-Duse-dbflute=true もお忘れなく 🙂

SAStruts for Portlet で Pluto 2.0 対応

Pluto 2.0 で動かないということで確認。Pluto 2.0 はリリース時に vote するのにちょこっと動かしただけだったので、今回はSAStrutsなポートレットを動かしてみた。そしたら、動かない。調べたところ、いくつか問題があるのだけど、他のポータルでは今まで言われたことないところだったので、Pluto 2.0 の実装の怪しさをちょっと感じた。そんなところでNPEは出んだろうというところでくらったりしたし。まぁ、そんな感じでそこいらを切り抜ける修正をして対応。あとで、PALポータルで確認して、特に問題がなさそうなら、リリースしよっと。

Maven Archetypeを更新中

依存関係のは後でやればいいかと思っていたのだけど、別件でポートレット周りの調整をする必要があり、そのため、ML であった依存関係とか修正。一応、SNAPSHOT版は利用できるかと。geronimo-jta_1.1_spec-1.0-tsr.jar については、Seasar の ML でTomcatでは使わないからMavenリポジトリに入れないでいいんじゃない、みたいなやりとりがあったりしたようなので、デフォルトでは含めないようにした。それ以外は tutorial の jar とほぼ同じ感じになったかと。

さて、本題のポートレットの周りの確認をするか…。

SAStruts Portletを更新

久々にポータル関連の作業をした。っで、SAStrutsなポートレッとを S2 2.4.39 で動かしてみたら、普通に動かない…。それで調べてみたら、原因は近頃の S2 でHotdeployFilterでリクエストがラップされるので、それを期待しないで、instanceof をしているとうまく動かなくなる。というわけで、SAStrutsなポートレッとでは getRequest() して親までチェックするように変更して対応してみた。そんな感じでちょっとはまった…。