Struts1.3.1変わりすぎ!
各所でStruts1.3.1のリリースを告げる記事がこの前から掲載されている。Javadocでも見てやろうと,Apacheのサイトに覗きに行って
みた。
Struts1.2.8
org.apache.struts
org.apache.struts.action
org.apache.struts.actions
org.apache.struts.config
org.apache.struts.config.impl
org.apache.struts.plugins
org.apache.struts.taglib
org.apache.struts.taglib.*
org.apache.struts.tiles
org.apache.struts.upload
org.apache.struts.util
org.apache.struts.validator
org.apache.struts.validator.validwhen
Struts1.3.1
org.apache.struts
org.apache.struts.action
org.apache.struts.chain
org.apache.struts.chain.commands
org.apache.struts.chain.commands.generic
org.apache.struts.chain.commands.servlet
org.apache.struts.chain.commands.util
org.apache.struts.chain.contexts
org.apache.struts.config
org.apache.struts.config.impl
org.apache.struts.mock
org.apache.struts.upload
org.apache.struts.util
org.apache.struts.validator
org.apache.struts.validator.validwhen
特徴的なこととして,pluginsパッケージがごっそりなくなって,その代わりにchainパッケージが追加されている。Shaleといい,次期StrutsはChain of Responsibilityパターンが超重要である。
あとは,mockパッケージの存在はかなり大きい。単体テストの強力なパートナーとなるだろう。フレームワークがこのようなmockクラスを含むのはちょっと抵抗感があるけど,まぁ便利なことに越したことはないので,歓迎だ。
利用頻度が高いForwardActionクラスなどは,どうやら標準から除外されて,Extrasサブパッケージに移された模様。Tilesやカスタムタグ関連も同様である。組み合わせの発想が必要となる。
今まで「Strutsを拡張して使っていた」人は,今回の1.3.1はかなりのダメージを受けるのではないだろうか?RequestProcessorガンガン拡張した結果のシステムは,かなりの後悔を感じるかもしれない。最近はSpringFrameworkとの組み合わせでRequestProcessorの拡張ではなくAOPを使って実装するようにしていたが,やはり正解だったと実感した。
Shaleの品質が成熟してくれば,1.3.1の方向ではなく,やはりShaleを採用するべきだろう。でも,やっぱりWicketを使ってみたい!しかも仕事で。。。
Wicket使ってみたいってプロジェクト,ありませんか? (^^;


