Seasar2.4 beta4リリース

2.4.0-beta-3からの変更点は次の通りです。

  • AbstractExternalContextMap?#getAttributeNames?()の戻り値型を Enumeration から Iterator に変更しました.
  • S2FrameworkTestCase? でテストメソッドを実行するたびに ClassLoader? を切り替えるようにしました.
  • @Resource の name 属性で複合名 ('/' で区切られた名前) を扱えなかった問題を修正しました.
  • JPA エンティティクラスのメタデータを扱う EntityDesc? を追加しました.
  • setter自動インジェクションでインターフェースの配列をサポートしました。
  • MapやCollectionに代入可能なインターフェースを自動バインディングの対象からはずしました。
  • SingletonS2ContainerFactory? や S2FrameworkTestCase? で commons-logging のリソースを解放するようにしました.
  • 外部バインディングで文字列以外もバインディングできるようにしました.
  • 外部バインディングで配列や List 型のプロパティにリクエストパラメータやヘッダの配列をバインドできるようにしました.
  • 外部バインディングできなかった場合に自動バインディングが行われるようにしました.
  • @Interceptor メタアノテーションの付けられたアノテーションで特定のアスペクトを織り込めるようになりました.
  • S2ContainerImpl?#findComponents(Object) で,引数が Class 型の場合はそのクラスの配列を返すようにしました.
  • S2Container に次のメソッドを追加しました.
    • findAllComponents?(Object)
    • findAllComponentDefs?(Object)
    • findLocalComponents?(Object)
    • findLocalComponentDefs?(Object)
  • コンテナの排他制御をルートコンテナに対して行うようにしました.
  • BeanDescImpl? からコンストラクタおよびメソッドの引数名をデバッグ情報から取得する機能を削除しました.
  • org.seasar.extension.dataset.types.ObjectType?にて、比較対象がComparableな場合にはcompareToを使うようにしました。[CONTAINER-1]
  • COOL deployを追加しました。
  • 環境による条件付includeを実装しました。

これで、2.4の新機能はすべて実装しました。次のバージョンはRCになります。