Wicketの1.3ブランチは、依然JDK 1.4準拠であるが、1.3でシップされる多くの機能は 単なる性質上から、Java 5のみで利用可能である。これには、Google Guiceサポート(source)およびSpring Annotationsサポート(両者ともJava 5アノテーションに依存)、Wicket JMX Bean(Java 5 JMX管理機能が必要)が含まれる。
- JDK-1.4準拠のWicketの最終リリース(次回のリリースはJava 5ベース)
- 初のApacheのリリース:パッケージの名前を org.apache.wicket に変更
- 簡素化された複数のコアAPI
- 相対URLを使用したプロキシサーバのゼロ構成で動作
- Google Guiceサポートの追加
- コードのラインを変更せずに、ポータルで直接Wicket ページを使用(JSR-168/JSR-286サポート)
- ロギングAPIをcommons-loggingからslf4jへ切り替え
- 速度テンプレートをパネルとしてページに統合
- YUIカレンダーおよびJoda時間に基づいたデイトピッカー(wicket日付時刻)
- 新たなjavascriptの依存関係をAjax要求でページヘッダーへ追加。たとえば、Ajaxを通じてクライアント上でコンポーネントが置き換えられ る場合、そして置き換えにscript.aculo.usが必要であるなら、script.aculo.usおよび要求される依存関係は必要に応じてダウ ンロードされる。
- 改良されたさらに堅固なヘッダーコントリビューション
- 処理状態を把握しないページやコンポーネントでかなりの数のユーザにスケール
- 改善されたAjaxTree/AjaxTreeTable
- ハイブリッドURLエンコード方式により、検索エンジンやユーザは満足
- 書式パネルを作成したら、書式タグのネストに気を揉まずにどこでも使用可能
- ファイルシステムにコンポーネントの階層を格納することで、セッション使用を最小化(DiskPageStore)
Wicket 1.3.1は1.3の初回リリースから1カ月と少しで利用可能になり、 主にメンテナンスリリースであるが、数多くの機能の拡張を提供するものである。
多くのバグが除去され、改善点が実装された。最も顕著な改善点は、買ったその日から使える透過性クラスタリングサポートの追加である。(WICKET-1272)(source)1.3.1に追加された透過性クラスタリングサポートは1.3に追加されたDiskPageStore機能を利用し、初回の実装はWicket-Userメーリングリスト(source)のMatej Knoppにより、詳細に記述された。以下は抜粋である。
ページインスタンスがNodeAからNodeBへ複製される場合、セッションで保持されないで、即座にnodeBのDiskPageStoreに格納される。 これは、同じページマップから他のページがNodeBへ複製された後でも、NodeBでインスタンスは後にアクセス可能であることを意味する。その理由は、すでにDiskPageStoreに格納されているからである。また、メモリに保持される必要がないので、セッション状態を大幅に削減する。1.3.1でのその他すべての問題修正や改善についての完全なリストは、ここで参照できる(source)。
1.3.1への移行を検討しているWicket 1.2ユーザ用に、さまざまなAPIや機能の変更について詳細を記したマイグレーションに関する文書が用意されている(source)。新しいapacheパッケージ構造 への移行に伴い、1.2ベースのアプリケーションがする必要がある大きな変更が多数ある。以下はほんの一例に過ぎない。
- IModel getObjectおよびsetObjectメソッドのコンタクトは、パラメーターとしてコンポーネントを許可しない。
- Wicket1.2拡張機能プロジェクトで提供されているDatePickerの実装は、ライセンスの競合の理由からもはや利用不可能となっている。Wicketチームは、YUI (Yahoo UI)カレンダーコントロールに基づいて代替品を提供している。
- 検証APIは書式APIから分離しているので、独立して使用することができる。
- Wicketチームは、初期化では1.2からWicketServletではなくServletFilterへの移行を推奨している。
原文はこちらです:http://www.infoq.com/news/2008/02/wicket_1_3