ChangeLog
2008/03/28†
2.4.23 からの変更点は次のとおりです.
- Bug
- [CONTAINER-173] - S2JDBC で getCount() を呼び出した場合に生成される SQL が副問い合わせに別名を指定していないため,PostgreSQL でエラーとなる問題を修正しました.[Seasar-user:13024]
- [CONTAINER-179] - S2JDBC を DB2で使った場合に,Blob のデータ長が 0 だと例外が発生する問題を修正しました.[Seasar-user:13449]
- Improvement
- [CONTAINER-174] - コンテナの終了時や HOT deploy の後処理で Introspector#flushCaches() を呼び出すようにしました.[Seasar-user:13191]
- [CONTAINER-175] - SAX サポートクラスの final を外し,OGNL の処理中にクラスを読み込むのを Class#forName() から ClassLoader#loadClass() に変更しました.
- [CONTAINER-176] - S2JDBCでTableアノテーションとTableGeneratorアノテーションのcatalog属性に対応しました。
- [CONTAINER-177] - S2JDBC で,PostgreSQL8.1以降に対応した Dialect を追加しました.[Seasar-user:13308]
- [CONTAINER-178] - S2JDBC で,SQL ファイルの先頭に BOM (U+FEFF,ZERO WIDTH NO-BREAK SPACE) が付けられている場合は除去するようにしました.[Seasar-user:13197]
2008/02/22†
2.4.22 からの変更点は次のとおりです.
- Bug
- [CONTAINER-163] - 数値や日付の変換で空文字のときはnullに変換するようにしました
- [CONTAINER-170] - S2JDBC で Firebird を使用する場合,ID 自動生成の Strorategy に Sequence を使用すると例外が発生する問題を修正しました.[Seasar-user:12794]
- Improvement
- [CONTAINER-167] - S2JDBC で,結合条件を付加できるようにしました.[Seasar-user:12613]
- [CONTAINER-169] - S2JDBC の SQL (ファイル含む) を使った問い合わせで,一つの SQL で通常の問い合わせと SEELCT COUNT(*) による件数の取得との両方を実行できるようにしました.[Seasar-user:12683]
- [CONTAINER-172] - S2JUnit4をJUnit4.4に対応させました。
- Task
- [CONTAINER-168] - S2JDBC のチュートリアルに iterate() および getCount() の説明を追加しました.[Seasar-user:12612]
2008/01/25†
2.4.21 からの変更点は次のとおりです.
- Bug
- Improvement
- [CONTAINER-162] - S2Dxo および S2BeanUtils で,変換元の String 型のプロパティ値が空文字列の場合は,変換対象から除外することを指定できるようにしました.[Seasar-user:12599]
- [CONTAINER-164] - S2JDBCのSimpleWhereにexcludesWhitespace()を追加しました
- [CONTAINER-165] - S2BeanUtilsでincludesとexcludesを同時に使えるようにしました
- [CONTAINER-166] - S2JTA の TransactionSynchronizationRegistry を S2JTA に依存しないようにしました.
2008/01/18†
2.4.20 からの変更点は次のとおりです.
- Bug
- [CONTAINER-150] - S2Dxo で shallowCopy が true の場合,変換元のプロパティ型が Object[] で変換先のプロパティ型が Integer[] だと,代入不可にもかかわらず代入しようとして IllegalArgumentException が発生する問題を修正しました.[Seasar-user:12408]
- [CONTAINER-154] - PropertyDesc で,非 public フィールドと getter メソッドのみによる read only なプロパティの getValue() や,非 public フィールドと setter メソッドのみによる write only なプロパティの setValue() が例外にならない問題を修正しました.
- Improvement
- [CONTAINER-160] - S2JDBC の SQL を自動生成する更新・削除で,@Id アノテーションが指定されていないエンティティを指定された場合は例外をスローするようにしました.
- New Feature
- [CONTAINER-151] - S2JDBCで@MappedSuperclassに対応し、エンティティの親クラスに永続フィールドを持てるようにしました。
- [CONTAINER-152] - Teeda の RequestDumpFilter を移植しました.
- [CONTAINER-153] - S2JDBC で,問い合わせ結果を List で返すのではなく,1 件ずつコールバックする機能を追加しました.
- [CONTAINER-156] - S2JDBC の SQL 自動生成による問い合わせで,SELECT COUNT(*) の結果を取得する getCount() メソッドを追加しました.[Seasar-user:12500]
- [CONTAINER-157] - S2JDBC の SQL 自動生成による問い合わせで,ヒントをサポートしました.[Seasar-user:12491]
- [CONTAINER-158] - S2Dxo で,変換先プロパティ名に付与するプレフィックスを指定できるようにしました.[Seasar-user:12427]
- [CONTAINER-159] - S2BeanUtilsでコンバータの指定を可能にしました.
2008/01/04†
2.4.19 からの変更点は次のとおりです.
- Bug
- [CONTAINER-143] - PropertyDescでString以外のプロパティをStringのプロパティにセットできない問題を修正しました
- [CONTAINER-145] - S2JDBCですでに閉じられた論理的コネクションを取得してしまう問題に対処しました。
2007/12/21†
2.4.18 からの変更点は次のとおりです.
- Bug
- [CONTAINER-140] - 同一の EntityManagerFactory を持つ複数の TxScopedEntityManagerProxy が,トランザクション下で異なった EntityManager を作成してしまう問題を修正しました.
- [CONTAINER-142] - WAS5.1 用の jta.dicon で,WAS の TransactionManagerFactory のパッケージ名が間違っているのを修正しました.
- Improvement
- New Feature
2007/12/14†
2.4.18-rc4 からの変更点はありません.
2.3.23-rc1 からの変更点はありません.
2007/12/07†
2.4.18-rc3 からの変更点は次のとおりです.
- Bug
- [CONTAINER-131] - プロパティの型がインターフェースでなくてもコンテナに一つだけコンポーネントが登録されていれば自動バインディングするようにした修正を元に戻しました
- [CONTAINER-132] - S2JDBCでユーザー定義のValueTypeをEntityで使用できるようにしました.
- [CONTAINER-133] - Teeda (Portlet) と S2Axis2 を組み合わせると UnsupportedOperationException がスローされる問題を修正しました.[Seasar-user:11866]
- [CONTAINER-134] - BeanDescImpl#getMethodNoException() がメソッドが見つからない場合に例外をスローする問題を修正しました.
- [CONTAINER-135] - S2JDBC を WAS6 で使用すると,トランザクションのコミット時に NullPointerException が発生する問題を修正しました.[Seasar-user:11924]
- [CONTAINER-136] - S2JTA で,カレントスレッドにトランザクションが関連づけられた状態で Synchronization#afterCompletion() が呼び出される問題を修正しました.
- Improvement
- [CONTAINER-137] - JPA サポートが WAS でも動作するようにするため,TransactionManager に依存しないようにしました.
- Task
2007/11/30†
2.4.18-rc2 からの変更点は次のとおりです.
- Bug
- [CONTAINER-117] - S2Tx で,UserTransaction#setRollbackOnly() が既に呼び出されているトランザクションから例外がスローされると,SIllegalStateException (既にロールバックとしてマークされています) が発生する問題を修正しました.[Seasar-user:11630]
- [CONTAINER-125] - S2JUnit4のSimpleDataAccessorのreadXlsReplaceDbメソッドで誤ってreadXlsAllReplaceDbメソッドを呼び出している不具合を修正しました。
- [CONTAINER-126] - S2UnitやS2JUnit4のreloadOrReadDbメソッドでIndexOutOfBoundsExceptionが発生する不具合を修正しました。
- [CONTAINER-127] - S2JDBCのorderByメソッドでプロパティ名がカラム名に変換されない不具合を修正しました。
- Improvement
- [CONTAINER-112] - S2JDBC で,挿入系で一意制約違反になった場合は javax.persistence.EntityExistsException をスローするようにしました.
- [CONTAINER-116] - S2Dxo の変換カスタマイズの簡易指定で,変換元プロパティの位置に null リテラルを記述できるようにしました.[Seasar-user:11582]
- [CONTAINER-119] - S2DBCP で,RDBMS に接続するまでのタイムアウト時間を設定できるようにしました.[Seasar-user:11618]
- [CONTAINER-120] - S2JDBCでRDBMSの日付・時刻型をjava.util.Dateやjava.util.Calendarで扱えるようにしました。
- [CONTAINER-124] - S2JDBCのBinaryTypeでBLOBでないにも関わらず毎回BLOBとして扱われることがあるが、非効率なのでBLOBとBLOBでない場合で処理を分けるようにしました.
- [CONTAINER-128] - S2AOPで,pointcutが指定されなかった場合は Object.class に属していない public なメソッドが対象となるようにしました.
- [CONTAINER-129] - S2JDBCでSQLのログを出力する際、バインドする値ごとに適切な形式に変換するようにしました。
- [CONTAINER-130] - S2JDBC の AutoSelect で,join(String) メソッドの名前を leftOuterJoin(String) に変更し,innerJoin(String) メソッドを追加しました.
- New Feature
- [CONTAINER-115] - EJB3 の @TransactionAttribute アノテーションを POJO (非 EJB) に指定してトランザクション属性を設定可能にする TxAttributeCustomizer を追加しました.
- [CONTAINER-118] - S2JDBC で,select 〜 for update をサポートしました.
- [CONTAINER-121] - Commons-BeanUtilsの流れるようなインターフェース版を追加しました.
- [CONTAINER-122] - S2JDBCでユーザー定義のSerializableなオブジェクトをテーブルに格納できるようにしました.
- [CONTAINER-123] - S2JDBCのAutoSelectで主キーのみ、もしくは主キーとバージョン番号の組み合わせで簡単に検索できるようにしました.
2007/11/08†
2.4.18-rc1 からの変更点は次のとおりです.
- Bug
- [CONTAINER-101] - S2JDBC で,AutoSelect の where に new SimpleWhere().eq("employeeName", null) のような無効な条件しかない場合に不正な SELECT 文が生成される問題を修正しました.
- [CONTAINER-104] - S2JDBC で,1対多の関連をフェッチする問い合わせで getSingleResult() を呼び出した場合に,関連先のエンティティが複数あると NonUniqueResultException が発生する問題を修正しました.
- [CONTAINER-113] - ログ出力用SQLの組み立て時、バインド変数に対応する引数が足りない場合はIllegalBindArgSizeRuntimeExceptionをスローするようにしました。
- [CONTAINER-114] - S2JTA で,RestrictedTransactionImpl が WAS6 正しく動作しない問題を修正しました.[Seasar-user:11520]
- Improvement
- [CONTAINER-103] - S2JDBC で,SimpleWhere に渡された String 型のパラメータが空文字列または空白のみの文字列の場合は条件に追加しないようにしました.
- [CONTAINER-106] - S2Dxo で,変換元と変換先の型が同じ場合,変換元のオブジェクトをそのまま変換先オブジェクトとしていたが,String や Number 等の不変なオブジェクトを除いて,同値な別オブジェクトを変換先オブジェクトとするようにしました.
- [CONTAINER-107] - S2JDBC で,SQL ファイルを指定するパスを,ピリオド区切りからスラッシュ区切りに変更しました.
- [CONTAINER-108] - S2JDBC の更新系で,更新行数が 0 でも例外をスローしないことを指定できるようにしました.
- [CONTAINER-109] - S2JDBC の検索で getSingleResult() が呼ばれた場合に,取得行数が 0 なら例外をスローすることを指定できるようにしました.
- [CONTAINER-111] - S2JDBC で,バッチ更新時のバッチサイズを指定できるようにしました.
2007/10/23†
2.4.17 からの変更点は次のとおりです.
- Bug
- [CONTAINER-77] - S2Dxo で,convert(src) 形式のメソッドの引数に null が渡された場合は戻り値に null を返し,convert(src, dest) 形式のメソッドの引数に null が渡された場合は詳細なメッセージを含んだ例外をスローするようにしました.
- [CONTAINER-81] - ルートパッケージに 'web' が含まれている場合に,クラス名からコンポーネント名を正しく求められない問題を修正しました.[Seasar-user:10177]
- [CONTAINER-82] - InterType を使用すると HotdeployClassLoader が GC されない問題を修正しました.
- [CONTAINER-83] - BeanDesc において,setter/getter メソッドが共変戻り値を使っているクラスの場合,コンパイラによって作成されるブリッジメソッドを setter/getter と判断してしまう問題を修正しました.
- [CONTAINER-85] - HOT deploy 時に AOP を使用してエンハンスされたクラスを OGNL で使用すると,リクエストが終了しても HotdeployClassLoader および ClassPool が解放されない問題を修正しました.[Seasar-user:10398]
- [CONTAINER-90] - RemoveSessionInterceptor は,ドキュメントでは対象のメソッドが正常に終了した場合のみセッションから属性を削除することになっているが,実際には例外が発生した場合でも属性を削除してしまっていたのを修正しました.
- [CONTAINER-91] - HOT deploy 時に,AOP が適用されたクラスが HTTP セッションに格納されると,HotdeployClassLoader が GC されないため,Javassist 関連のリソースも解放されない問題を修正しました.
- [CONTAINER-93] - S2DBCPで,ConnectionPool の maxPoolSize プロパティを 0 (プールしない) に設定しても,トランザクションに関連づけられたコネクションがプールされてしまう問題を修正しました.
- [CONTAINER-96] - S2Dxo で @ConversionRule アノテーション (定数アノテーションも同様) を使った場合に,変換先プロパティに 1 文字のプロパティ名を指定すると変換されない問題を修正しました.
- Improvement
- [CONTAINER-74] - トランザクションが開始・終了する場合及びコネクションプールからコネクションが取得される際のメッセージにトランザクションを含めるようにしました.
- [CONTAINER-75] - S2Dxo の組み込みコンバータを dicon で設定できるようにしました.
- [CONTAINER-79] - ストアドプロシージャーに対応するためのメソッドをValueTypeに追加しました。
- [CONTAINER-84] - S2JUnit4のS2Assert#assertMapEqualsメソッドでジェネリクスのWildcardを使用するのをやめ実行しやすくしました
- [CONTAINER-86] - S2DBCP において,コネクションをクローズする前に自動コミットモードが無効なら明示的にトランザクションをロールバックするようにしました.
- [CONTAINER-87] - S2Dxo の変換ルール (非 OGNL 式) で,変換元のパス式の途中のプロパティが null だった場合に NullPointerException が発生しないようにしました.
- [CONTAINER-95] - Java5 環境の S2Dxo で,変換先 Bean のプロパティに List<T> や Set<T> が指定された場合,変換元のオブジェクトを T に変換するようにしました.
- [CONTAINER-97] - SQLコメントのバインド変数で名前がorderByの場合は、埋め込み変数に変換する
- [CONTAINER-99] - コンポーネントが規約に沿っているかのチェック時にミドルパッケージ名をすべて小文字に変換してチェックするようにしました.
- New Feature
- [CONTAINER-78] - WebSphere など,アプリケーションから TransactionManager を利用することがサポートされていない環境向けに,UserTransaction と TransactionSynchronizationRegistry を使用した TransactionManager の制限された実装を提供しました.
- [CONTAINER-88] - S2Tx で,WAS6 の UOW API をサポートしました.
- [CONTAINER-89] - インターセプタで HTTP セッションを破棄するための InvalidateSessionInterceptor を追加しました.
- [CONTAINER-92] - S2JUnit4で Java EE のAPIに依存しないDataAccessorの実装を用意しました。
- [CONTAINER-100] - S2JDBC 拡張機能を追加しました.
- Task
- [CONTAINER-76] - S2-Extension の pom.xml に定義されている POI の <dependency> で log4j を exclude するようにしました.[Seasar-user:9945]
2.3.22 からの変更点は次のとおりです.
- Improvement
- [CONTAINER-79] - ストアドプロシージャーに対応するためのメソッドをValueTypeに追加しました。
- [CONTAINER-86] - S2DBCP において,コネクションをクローズする前に自動コミットモードが無効なら明示的にトランザクションをロールバックするようにしました.
- Task
- [CONTAINER-76] - S2-Extension の pom.xml に定義されている POI の <dependency> で log4j を exclude するようにしました.[Seasar-user:9945]
2007/08/13†
2.4.16 からの変更点は次のとおりです.
- Bug
- [CONTAINER-68] - MockServletContextImpl#getResourcePaths(String) に /WEB-INF/lib/ のように複数階層のパスを渡すと,結果の Set に含まれるパスが不正となる問題を修正しました.
- [CONTAINER-71] - StringClobTypeでResultSet#getCharacterStreamがnullを返す場合に対応しました。
- [CONTAINER-73] - SqlLog#getBindArgTypes()の戻り値をオブジェクトの配列からクラスの配列に変更しました。
- Improvement
- [CONTAINER-69] - SQLのログをSqlLogRegistryから削除できるようにしました。
- [CONTAINER-72] - MessageResourceFactory の getBundle(String, Locale) および getNullableBundle(String, Locale) において,Locale の言語コードだけでなく国コードおよびバリアントコードも含めてリソースを検索するようにしました.[Seasar-user:9753]
- New Feature
- [CONTAINER-70] - public fieldのプロパティとして認識できるようにする
2.3.2 からの変更点は次のとおりです.
- Bug
- [CONTAINER-68] - MockServletContextImpl#getResourcePaths(String) に /WEB-INF/lib/ のように複数階層のパスを渡すと,結果の Set に含まれるパスが不正となる問題を修正しました.
- [CONTAINER-71] - StringClobTypeでResultSet#getCharacterStreamがnullを返す場合に対応しました。
- [CONTAINER-73] - SqlLog#getBindArgTypes()の戻り値をオブジェクトの配列からクラスの配列に変更しました。
- Improvement
- [CONTAINER-65] - S2JDBC に Statement#executeBatch() の結果である int[] を返す ReturningRowsBatchHandler を追加しました.[Seasar-user:9228]
- [CONTAINER-69] - SQLのログをSqlLogRegistryから削除できるようにしました。
2007/07/30†
2.4.15 からの変更点は次のとおりです.
- Bug
- [CONTAINER-67] - HOT deploy 時に,session および application スコープのコンポーネントを最初に取得した (インスタンスが作成された) 直後に取得すると,最初とは異なったインスタンスが返される問題を修正しました.[Seasar-user:9227]
- Improvement
- [CONTAINER-65] - S2JDBC に Statement#executeBatch() の結果である int[] を返す ReturningRowsBatchHandler を追加しました.[Seasar-user:9228]
- [CONTAINER-66] - S2FrameworkTestCase および S2Unit4 でコンテナ作成時に NamingConvention を自動登録しないよう設定可能にしました.[Seasar-user:9288]
2007/07/11†
2.4.14 からの変更点は次のとおりです.
- Bug
- [CONTAINER-54] - S2JUnit4でテストメソッドのフィルタやソートを有効にしました.
- [CONTAINER-55] - DataTableにカラム名を登録する際に、アンダースコアを除去しないようにしました.
- [CONTAINER-61] - NamingConventionにてviewRootPath設定の不具合を修正しました.
- [CONTAINER-64] - session スコープおよび application スコープのコンポーネントが初期化される際に,setter インジェクションおよび init メソッドインジェクションが呼び出されなくなっていた問題を修正しました.
- Improvement
- [CONTAINER-56] - XlsReaderでColumnTypeを判定するときに、nullでない行まで手繰って判定するようにしました。
- [CONTAINER-58] - S2JDBCで、SQLをログ出力するときのLoggerの引数にとるクラスを、setterで設定可能にしました。
- [CONTAINER-59] - XlsReaderとXlsWriterのフィールドとprivateメソッドをprotectedにしました。
- [CONTAINER-62] - S2Dxo 用に作成した独自コンバータをルートのコンテナから取得するようにしました.
- [CONTAINER-63] - CustomizerChain クラスに addAspectCustomizer(String interceptorName) 等のメソッドを追加しました.
- New Feature
- [CONTAINER-57] - S2JDBCでSQLのログを記録しアプリケーションからログを参照できるようにしました.
2.3.20 からの変更点は次のとおりです.
- Improvement
- [CONTAINER-58] - S2JDBCで、SQLをログ出力するときのLoggerの引数にとるクラスを、setterで設定可能にしました。
- [CONTAINER-60] - S2JDBCで,ConfigurableStatementFactoryにqueryTimeoutを追加しました.
- New Feature
- [CONTAINER-57] - S2JDBCでSQLのログを記録しアプリケーションからログを参照できるようにしました.
2007/06/29†
2.4.13 からの変更点は次のとおりです.
- Bug
- [CONTAINER-34] - Tomcat でコンテキストの再ロードを行うとヌルポが発生する問題を修正しました.[Seasar-user:7767]
- [CONTAINER-40] - 規約に外れたコンポーネントがSMART deployされてしまう問題を修正しました.
- [CONTAINER-42] - Transaction#commit() が呼び出されたがコミットできなかった場合に Synchronization#afterCompletion() が呼び出されない問題を修正しました.[Seasar-user:8402]
- [CONTAINER-44] - WARM deploy で複数のスレッドが同じ未登録コンポーネントを同時に要求した場合,それぞれのスレッドでコンポーネントが登録されてしまう問題を修正しました.[Seasar-user:8516]
- [CONTAINER-45] - OGNLでNullpointerExceptionが発生する現象を回避するため、パッチをあてたOGNLのjar(ognl-2.6.9-patch-20070624.jar)を利用するようにしました。[Seasar-user:8563]
- [CONTAINER-47] - MockServletContextImpl#getResourcePaths(String) が返す Set に含まれるパスを MockServletContextImpl#getResource(String) に渡すと null が返される問題を修正しました.[Seasar-user:8620]
- [CONTAINER-50] - Xerces 2.6.2 が使われている環境で javax.xml.parsers.ParserConfigurationException が発生する問題を修正しました.[Seasar-user:8711]
- [CONTAINER-51] - HOT deploy 時に request/session スコープのクラスが Serializable ではあるがデフォルトコンストラクタのない場合に InstantiationException がスローされる.[Seasar-user:8745]
- Improvement
- [CONTAINER-35] - POI のバージョンを 2.5.1 から 3.0 へ更新.
- [CONTAINER-38] - S2JDBCのMap系のResultSetHandlerで_付のカラムを_なしのプロパティに自動変換する
- [CONTAINER-39] - S2JUnit4でTxBehaviorにCOMMITが指定された場合、テストが成功する場合にのみトランザクションをコミットする
- [CONTAINER-46] - Enumを文字列から自動的に変換したい
- [CONTAINER-48] - S2JDBCでEnumに対応する
- [CONTAINER-49] - S2JDBCで基本型とユーザ定義型の自動変換を行う
- [CONTAINER-52] - S2JUnit4でテストデータの準備方法を簡単に選択できるようにする
- [CONTAINER-53] - ConfigurableStatementFactoryにqueryTimeoutを追加する
- New Feature
- [CONTAINER-37] - S2Junit4のExcelデータの読み込みにおいて、文字列に含まれる空白を取り除かない設定を可能にする。
- [CONTAINER-41] - S2Dxo でコピー元プロパティ名の prefix を指定できるようにしました.
2.3.19 からの変更点は次の通りです.
- Bug
- [CONTAINER-32] - ComponentAutoRegisterでClassPatternが二重巡回(類似問題)
- [CONTAINER-34] - Tomcat でコンテキストの再ロードを行うとヌルポが発生する問題を修正しました.[Seasar-user:7767]
- [CONTAINER-45] - OGNLでNullpointerExceptionが発生する現象を回避するため、パッチをあてたOGNLのjar(ognl-2.6.9-patch-20070624.jar)を利用するようにしました。[Seasar-user:8563]
- [CONTAINER-47] - MockServletContextImpl#getResourcePaths(String) が返す Set に含まれるパスを MockServletContextImpl#getResource(String) に渡すと null が返される問題を修正しました.[Seasar-user:8620]
- Improvement
- [CONTAINER-35] - POI のバージョンを 2.5.1 から 3.0 へ更新.
- New Feature
- [CONTAINER-20] - DestroyMethodアノテーションが欲しい
2007/05/22†
2.4.13-rc1 からの変更点は次の通りです.
- S2-Framework
- [Seasar-user:7523] S2FrameworkTestCaseで,ルートコンテナに読み込む dicon ファイルを getRootDicon() メソッドまたは getXxxRootDicon() メソッドの戻り値で指定できるようにしました (Xxx はテストメソッド testXxx() に対応).
- [Seasar-user:7523] HOT/WARM deploy において,ルート以外のコンテナからコンポーネントの取得が試みられた場合はコンポーネントの自動登録を行わないようにしました.
- [Seasar-user:7625] S2FrameworkTestCase で COOL deploy が有効にならない問題を修正しました.
- S2-Extension
- DBSession 機能を org.seasar.extension.dbsession パッケージから org.seasar.extension.httpsession パッケージに変更しました.
- DBSession において HttpServletRequst#getSession(boolean) が false で呼び出されたときに,常に HttpSession が作成されない問題を修正しました.
- [Seasar-user:7689] DbSession でセッションの更新時に同じ属性を INSERT してしまう問題を修正しました.
- [Seasar-user:7676] DbSession でバッチ更新しないよう設定できるようにしました.
- [Seasar-user:7568] XlsReader で文字列をダブルクオートで囲むことにより,文字列の両端の空白を維持することができるようにしました.S2TestCase からも利用できます.
- S2-Tiger
- [Seasar-user:7523] S2JUnit4で,ルートコンテナに読み込む dicon ファイルを @RootDicon アノテーションで指定できるようにしました.
2007/04/25†
2.4.12 からの変更点は次の通りです.
- S2-Framework
- ComponentAutoRegister でファイルシステムのクラスを自動登録する際に,クラスパターンを複数指定すると同じクラスが重複して登録されてしまう問題を修正しました.[CONTAINER-32]
- S2-Extension
- S2-Tiger
- EJB3 等の Jar がクラスパス上に存在しない場合には EJB3 関連の機能を使用しないようにしました.[Seasar-user:7357]
2007/04/09†
2.4.11 からの変更点は次の通りです.
- S2-Framework
- COOL deploy で NamingConvention に登録したインタフェース<->実装クラスのマッピングが反映されない問題を修正しました.[Seasarスレ9:712]
- 実行環境が Java5 の場合は Collections#synchronizedMap() でラップした HashMap の代わりに ConcurrentHashMap を使うようにしました.
- dicon に記述された式がリテラル (null,true,false) の場合は OGNL 式ではなく LiteralExpression として扱うようにしました.
- dicon に記述された式が単一のコンポーネント名を表す場合は OGNL 式ではなく ComponentNameExpression として扱うようにしました.
- S2AOP標準のトレースインターセプタにおいて,ログ出力レベルの DEBUG が有効でない場合はトレース文字列の組み立てを行わないようにしました.
- OC4JのjarのURLプロトコルであるcode-sourceに対応しました.
- SimplePathResovlerで特定の論理パスを特定の物理パスに置換できるようにしました.
- S2-Extension
- S2Dxo で DateFormat のインスタンスが複数のスレッドで共有されていたのを修正しました.
- S2Dxo で数値および文字列とenumとの相互変換をサポートしました (S2-Tiger が必要です).
- トランザクションがカレントスレッドから切り離される際に ThreadLocal に保持しているカレントトランザクションをクリアするようにしました.[Seasar-user:6672]
- S2JDBC で,SQL コメント中に ? が含まれていると例外が発生する問題を修正しました.[CONTAINER-31]
- S2JTA において,Synchronization#beforeCompletion() 内で例外が発生した場合はその例外ではなく RollbackExcetion をスローするようにしました.
- SQL Serverに対応したSqlWriterを追加しました.[Seasar-user:6635]
- S2-Tiger
- JavaEE5 関連のクラス・インタフェースは Geronimo の Jar ファイルを使用するようにして,自前で持っていたソースファイルは削除しました.
- JNDIからEntityManagerFactoryを取得するためのクラスJndiPersistenceUnitProviderを追加しました.
- JPAのマッピングファイルをdaoパッケージに置いた場合に対応しました.
- 同梱する JUnit4 のバージョンを 4.1 から 4.3.1 へ更新しました.
2.3.18 からの変更点は次の通りです.
- S2-Extension
- コンテナ終了時にコネクションプールのタイムアウトを監視するスレッドが終了しない問題を修正しました.[CONTAINER-28]
- トランザクションがカレントスレッドから切り離される際に ThreadLocal に保持しているカレントトランザクションをクリアするようにしました.[Seasar-user:6672]
- S2JDBC で,SQL コメント中に ? が含まれていると例外が発生する問題を修正しました.[CONTAINER-31]
2007/03/08†
2.4.10 からの変更点は次の通りです.
- S2Framework
- S2Unit を使った単体テストでは,環境名を env.txt ではなく,env_ut.txt から取得するようにしました.env_ut.txt が存在しない場合のデフォルトは "ut" となります.
- HOT/WARM deploy において,コンポーネント名を指定してコンポーネントを取得する際に,コンポーネント名の先頭の大文字・小文字が誤っていてもコンポーネントが取得できてしまう問題を修正しました.COOL deploy で見つけられない名前は HOT/WARM deploy でも見つからないようになりました.
- URL から InputStream を取得する際に,キャッシュしないように指定するようにしました.[Seasar-user:6403]
- SMART deploy で Jar ファイルがファイルシステム上にない場合 (Java Web Start など) に IOException が発生する問題を修正しました.[Seasar-user:6539]
- FileSystemAutoRegister で,ClassPattern のクラス名が別の ClassPattern のパッケージにも適用されてしまっていた問題を修正しました.[CONTAINER-29]
- S2FrameworkTestCase のインクルードで,指定されたパスが存在しない場合は無条件にパッケージ名に対応するパスを付加していたのを,パスを付加したファイルが実際に存在する場合のみ付加するようにしました.[seasar-dev:645]
- S2Extension
- 同梱する JTA のバージョンを 1.0.1B から 1.1 へ更新しました.
- TransactionSynchronizationRegistry の実装を追加しました.
- Web コンテナや AP サーバの提供する DataSource と S2JTA を連携するための DataSourceXADataSource を追加しました.[Seasar-user:6445]
- S2Tiger
- S2Unit4 を使った単体テストでは,環境名を env.txt ではなく,env_ut.txt から取得するようにしました.env_ut.txt が存在しない場合のデフォルトは "ut" となります.
2.3.17 からの変更点は次の通りです.
- S2Framework
- URL から InputStream を取得する際に,キャッシュしないように指定するようにしました.[Seasar-user:6403]
- FileSystemAutoRegister で,ClassPattern のクラス名が別の ClassPattern のパッケージにも適用されてしまっていた問題を修正しました.[CONTAINER-29]
- S2FrameworkTestCase のインクルードで,指定されたパスが存在しない場合は無条件にパッケージ名に対応するパスを付加していたのを,パスを付加したファイルが実際に存在する場合のみ付加するようにしました.[seasar-dev:645]
2007/02/19†
2.4.9からの変更点は次の通りです。
- S2Framework
- S2ContainerServlet でコンテナの情報を表示する際に,不正なパスを指定されるとヌルポになっていた問題を修正しました.
- コンテナの作成時及び HOT deploy の start/stop 時にデバッグメッセージを出力するようにしました.
- AspectCustomizer に useLookupAdapter プロパティを追加しました.インスタンス属性が singleton 以外 (request など) のインターセプタを利用する場合は,このプロパティを true にすることで,ターゲットコンポーネントのメソッドが呼び出される度にインターセプタがコンテナからルックアップされるようになります.
- RemoveSessionInterceptor の name プロパティの型を String から String[] に変更し,HTTPセッションから複数の属性を削除できるようにしました.[Seasar-user:6199]
- AbstractCustomizer に targetInterface プロパティを追加しました.このプロパティが設定された場合は,targetInterface を実装しているコンポーネントのみカスタマイズ対象となります.[Seasar-user:6166]
- S2Extension
- S2Dxoのパフォーマンスを改善しました.
- JTA トランザクションをコミットできなかった場合に RollbackException をスローするようにしました.[Seasar-user:6195]
- S2Tiger
- @RemoveSession アノテーションの name 要素の型を String から String[] に変更し,HTTPセッションから複数の属性を削除できるようにしました.[Seasar-user:6199]
2.3.16からの変更点は次の通りです。
- S2Framework
- 依存するjavassistのバージョンを3.0から3.4.gaへ上げました。
- S2Extension
- JTA トランザクションをコミットできなかった場合に RollbackException をスローするようにしました.[Seasar-user:6195]
2007/01/30†
2.4.8からの変更点は次の通りです.
- S2-Framework
- JDK5 で double から変換した BigDecimal の toString() メソッドが指数を含まないようにしました.
- BeanUtil クラスで,Bean から Bean へのプロパティのコピーができない問題を修正しました.
- MockHttpServletResponseから、出力されたストリームをassertできるようにしました。
- コンポーネントカスタマイザにカスタマイズ対象・非対象のクラスパターンを指定できるようにしました.
- S2-Extension
- コンテナ終了時にコネクションプールのタイムアウトを監視するスレッドが終了しない問題を修正しました.[CONTAINER-28]
- S2-Tiger
- キャスト無しでコンポーネントを取得できるSingletonS2Containerを追加しました。
2007/01/12†
2.4.7からの変更点は次の通りです。
- S2-Framework
- S2ContainerServlet からコンポーネント一覧等を返す場合にコンテントタイプを設定するようにしました.
- HotAwareDelegateInterceptor が移譲するコンポーネントを,ルートコンテナから取得するように変更しました.
- S2-Extension
- S2Dxo で Bean から型パラメータを指定した Map への変換の際に,Bean のプロパティが null だとヌルポになっていたのを修正しました.
- S2Dxoで Calendar から文字列に変換する際に ClassCastException が発生していた問題を修正しました.
- S2Dxo で Bean から Map へ変換する際に @ExcludeNull アノテーション/EXCLUDE_NULL 定数アノテーションが適用されるように修正しました.
- S2-Tiger
- EJB3 SessionBean のビジネスメソッドから Throwable および Error がスローされた場合にトランザクションがコミットされてしまうのを修正しました.
- S2EasyMockTestCase を S2TigerTestCase に名称変更して S2JUnit4 同様に @Mock/@Mocks をサポートしました.
2006/12/25†
2.4.6からの変更点は次の通りです。
- S2-Framework
- アスペクトを適用したメソッドから親クラスのメソッドを呼び出すためのヘルパーメソッドの名前がプロパティのsetter メソッドとして扱われてしまうのを回避するため,ヘルパーメソッドにプレフィックス ($$) を付けるよう修正しました.
- SMART deploy において,Service・Dao・Dxo を除き,デフォルトではインタフェース及び抽象クラスのコンポーネント定義を作成しないようにしました.
- creator.dicon の Creator の定義で enableInterface・enableAbstractClass プロパティを true にすることでインタフェース・抽象クラスのコンポーネント定義を作成することができます.
- customizer.dicon は非標準的な Customizer を定義することにし,標準的な Customizer は default-customizer.dicon をインクルードすることにしました.
- std-customizer.dicon のタグが不正だったのを修正しました.
- MetaCustomizer・InterTypeCustomizer を追加しました.
- HOT deploy に影響なく委譲するための HotAwareDelegateInterceptor を追加しました.
- AutoRegister で指定する ClassPattern のパッケージ名を "org.seasar" のように指定した場合に "org.seasar2" のようなパッケージもマッチしてしまうのを修正しました.[Seasar-user:5455]
- WebLogic で War ファイルのままデプロイした場合に War ファイルの中の Jar ファイルを扱えるように修正しました.[seasar-dev:633]
- 同梱する Javassist のバージョンを 3.3GA から 3.4GA に更新しました.
- S2-Extension
- Dxo インタフェースに @ExcludeNull アノテーションまたは EXCLUDE_NULL 定数アノテーションを指定することで,変換元のプロパティが null の場合は変換先に設定しないようにしました.
- S2-Tiger
- S2JUnit4 で @Mock アノテーションをサポートしました.
- EasyMock サポートを強化しました.
2.3.15からの変更点は次の通りです。
- AutoRegister で指定する ClassPattern のパッケージ名を "org.seasar" のように指定した場合に "org.seasar2" のようなパッケージもマッチしてしまうのを修正しました.[Seasar-user:5455]
2006/12/04†
2.4.5からの変更点は次の通りです。
- customizer.dicon が煩雑なのでデフォルトの Customizer を定義した default-customizer.dicon と std-customizer.dicon を追加し,customizer.dicon は標準と異なる設定のみ記述すればいいようにしました.
- NamingConventionImpl#fromPathToComponentName()において,作成されるコンポーネント名を capitalize するように修正しました.
- XmlS2ContainerBuilder に DTD のパブリック ID およびシステム ID を登録できるようにしました.
- ComponentInvoker で HOT deploy が適用されている場合の判定をするための ondemand プロパティを廃止して HotdeployUtil を使うように修正しました.
- S2Dxo で String から Number に型変換する際に,変換元が空文字列だとぬるぽになっていた問題を修正しました.[Seasar-user:5361]
- メソッドが呼ばれる度に SingletonS2ContainerFactory から取得した DataSource/TransactionManager に委譲する Proxy を追加しました.
- JPA の TemporalType と JDBC の SQL 型を相互変換するユーティリティクラスを追加しました.
- 同梱する JUnit4 のバージョンを 4.0 から 4.1 へ更新しました.
2006/11/27†
2.4.4からの変更点は次の通りです。
- 一つのインタフェースに複数の実装クラスがある場合に対応するため,コンポーネント名からクラス名を求める際に実装クラスから先に探すように修正しました.
- S2Dxoで変換先のオブジェクトが引数で渡された場合は,メソッドの仮引数の型ではなく,実際に渡されたオブジェクトの型を使ってプロパティを設定するように修正しました.
- S2Dxo の BeanToMap 変換で List<Map<String, String>> のように Map の値の型を指定できるようにしました.
- 引数型や戻り値型にプリミティブの配列が含まれる場合に TraceInterceptor で ClassCastException が発生していた問題を修正しました.
- components24.dtd の <components> 要素に initializeOnCreate 属性を追加しました.
- NamingConventionImpl で WebLogic で使われる zip: プロトコルの URL をサポートするように修正しました.
2006/11/17†
2.4.3からの変更点は次の通りです。
- S2-Tiger の enum InstanceType に APPLICATION を追加しました.[Seasar-user:5172]
- HOT deploy で application スコープのオブジェクトが ClassCastException になる問題を修正しました.
- convention.dicon でのルートパッケージの登録が WebLogic で IllegalArgumentException: URI is not hierarchical となる問題を修正しました.
- HotdeployFilter が適用されていても,HOT deploy モード以外のときは同期化しないで後続のフィルタを呼び出すように修正しました.
2006/11/16†
2.4.2からの変更点は次の通りです。
- AspectCustomizer を CustomizerChain で複数指定した場合に,Aspect の適用順が記述と逆になるのを修正しました.
- NamingConvention に設定した ignorePackageName を HotdeployClassLoader が認識しない問題を修正しました.
- S2Dxo の @ConversionRule アノテーションで指定されるキー名を case insensitive に扱うようにしました.
- Javassist のランタイムがコンテキストクラスローダーを使用するように javassist.runtime.Desc#useContextClassLoader フラグを true に設定するようにしました.[Seasar-user:5077]
- ResourceUtil#getBuildDir() がスペースを含むパス上の Jar ファイルを適切に扱えない問題を修正しました.
2006/11/14†
2.4.1からの変更点は次の通りです。
- [CONTAINER-19] - MockServletContextImpl#getRealPathが、リソースが無い場合に例外を返してしまう
- S2-Tiger の Jar にバンドルされていた jpa.dicon の名前を jpa-support.dicon に変更しました.
2006/11/11†
2.4.0からの変更点は次の通りです。
- S2Dao1.0.x系と組み合わせられるようにDatabaseMetaDataUtil#getColumnMap()を修正しました。
2.4.0-rc-2からの変更点は次の通りです。
- dicon ファイルで XInclude の サポートを追加しました.
- NamingConvention に無視するパッケージを指定できるようにしました.
- NamingConvention に特定のインタフェースと実装クラスの対応を登録できるようにしました.
- COOL/WARM deploy でコンポーネントとして登録したクラスをログに出力するようにしました.
- COOL deploy で内部クラスを対象としないように修正しました.
- cooldeploy.dicon を app.dicon ではなく s2container.dicon からインクルードするようにしました.
- warmdeploy.dicon を用意しました.
- WARM deploy で使用するための ThreadSafeS2ContainerImpl を追加しました.
- S2FrameworkTestCase および S2TestCase で WARM deploy がデフォルトで有効になるようにしました.
- WebSphere で実行時に CoolDeployAutoRegister が Jar の中のクラスを見つけられない問題を修正しました.
- ResourceAutoDetector で作成した InputStream を閉じていなかった問題を修正しました.
- S2DBCP 関連の実装クラスから final 修飾子を外しました.[Seasar-user:4921]
- S2DBCP の ConnectionPoolImpl に transactionIsolationLevel プロパティを追加しました.[Seasar-user:4921]
- Oracle9iでBlobを扱えるようにしました。
- Oracle でシノニムの使われている列名を取得できない問題に対処するため,XADataSourceImpl に addProperty() メソッドを追加しました.Oracle では addProperty("includeSynonyms", "true") してください.[CONTAINER-18]
- S2Dxo に MapToBean 変換のサポートを追加しました.
- S2Dxo の BeanToMap 変換で @ConversionRule が指定されていない場合は Bean の全てのプロパティをコピーするようにしました.
- S2Dxo で convert(src, dest) 形式の場合に,src から一時的に作成したオブジェクトに変換してそれを dest にコピーしていたのをやめて,直接 dest にコピーするようにしました.
- S2Dxo で変換先 Bean のプロパティ毎に Converter を指定できるようにしました.
- S2Dxo の @ConversionRule アノテーションで,変換先のプロパティ名をシングルクオートで囲まなくてもいいようにしました.ただし複雑な OGNL 式を使う場合は変換先のプロパティをシングルクオートで囲む必要があります.
2.3.14からの変更点は次の通りです。
- Oracle でシノニムの使われている列名を取得できない問題に対処するため,XADataSourceImpl に addProperty() メソッドを追加しました.Oracle では addProperty("includeSynonyms", "true") してください.[CONTAINER-18]
2006/10/31†
2.3.13からの変更点は次の通りです。
- BeanDesc で Boolean型(Wrapper)のプロパティに対応しました。
- Oracle9iでBlobを扱えるようにしました。
2.3.12からの変更点は次の通りです。
- S2DBCP 関連の実装クラスから final 修飾子を外しました.[Seasar-user:4921]
- S2DBCP の ConnectionPoolImpl に transactionIsolationLevel プロパティを追加しました.[Seasar-user:4921]
- S2ContainerServlet に S2Container の内容を HTML で表示する機能を追加しました.
2006/09/22†
2.3.11からの変更点は次の通りです。
- PreparedStatementWrapper#toStringで、オリジナルのPreparedStatementのtoStringへ委譲するようにしました。
- S2FrameworkTestCase で S2 コンテナから設定したフィールドをテストメソッドの実行後にクリアするようにしました.
- ToStringInterceptor を 2.4 系から移植しました.[CONTAINER-17]
- S2ContainerImplのsynchronizedをはずしました。S2ContainerBehaviour.SynchronizedProviderを使えば、synchronized版に切り替えることができます。
2006/09/21†
2.4.0-rc-1からの変更点は次の通りです。
- SimpleTraceInterceptor を追加しました.
- TraceInterceptor で引数が配列の場合にその要素を出力するようにしました.[CONTAINER-14]
- S2Dao の SQL 解析処理を S2 に統合しました.[CONTAINER-15]
- S2Dxo を S2 に統合しました.
- PreparedStatementWrapper#toStringで、オリジナルのPreparedStatementのtoStringへ委譲するようにしました。
- S2FrameworkTestCase で S2 コンテナから設定したフィールドをテストメソッドの実行後にクリアするようにしました.
- HOT & COOL deployのCreatorを統合して、container.creatorパッケージに移しました。インターフェースComponentCreatorは、containerパッケージにあります。
- HOT & COOL deployのrootPackageNameの指定をNamingConventionに移しました。
- ComponentCustomizerをcontainerパッケージに移しました。
- AspectCustomizer、CustomizerChainをcontainer.customizerパッケージに移しました。
- env.txtで改行があっても無視するようにしました。
- WARM deployを追加しました。
- HOT deploy対応のResourceBundleを追加しました。
- S2ContainerImplからsynchronizedを削除しました。
2006/08/16†
2.4.0-beta-4からの変更点は次の通りです。
- S2JDBCにてEntity側のchar・Character型プロパティを扱えるようにしました。[DAO-30]
- S2JDBCで、シングルクォートに囲まれた文字列に?が入っているSQL文を実行するとArrayIndexOutOfBoundsExceptionが発生していたのを修正しました。[CONTAINER-8]
- HOT deployで同じ方が登録されたときの振る舞いを、HOT deployでない場合と同じにしました。[CONTAINER-11]
- ForwardでもHOT deployができるようにしました。
- ComponentAutoRegisterにAutoNamingを復活させました。
- commons-logging を 1.0.4 から 1.1 へ変更しました.
2006/08/07†
2.3.10からの変更点は次の通りです。
- ConfigurableStatementFactoryを追加し、PreparedStatementのfetchSizeとmaxRowsをdiconから設定できるようにしました。[Seasar-user:3692][DAO-2]
- S2FrameworkTestCase でテストメソッドを実行するたびに ClassLoader を切り替えるようにしました.
- org.seasar.extension.dataset.types.ObjectTypeにて、比較対象がComparableな場合にはcompareToを使うようにしました。[CONTAINER-1]
- S2JDBCにてEntity側のchar・Character型プロパティを扱えるようにしました。[DAO-30]
- SingletonS2ContainerFactory や S2FrameworkTestCase で commons-logging のリソースを解放するようにしました.
- S2Container#findComponents の引数にクラスが指定された場合に,戻り値を Object[] ではなく,指定されたクラスの配列を返すようにしました.[CONTAINNER-2][CONTAINER-7]
- ComponentAutoRegister で WebSphere 独自の wsjar: URL を扱えるようにしました.
- S2JDBCで、シングルクォートに囲まれた文字列に?が入っているSQL文を実行するとArrayIndexOutOfBoundsExceptionが発生していたのを修正しました。[CONTAINER-8]
j2ee.diconが変更になります。
2006/07/26†
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)
- ResourceNotFoundRuntimeExceptionをorg.seasar.framework.utilからorg.seasar.framework.exceptionへパッケージ移動しました。
- コンテナの排他制御をルートコンテナに対して行うようにしました.
- BeanDescImpl からコンストラクタおよびメソッドの引数名をデバッグ情報から取得する機能を削除しました.
- org.seasar.extension.dataset.types.ObjectTypeにて、比較対象がComparableな場合にはcompareToを使うようにしました。[CONTAINER-1]
- COOL deployを追加しました。
- 環境による条件付includeを実装しました。
2006/06/15†
2.4.0-beta-2からの変更点は次の通りです。
- SelectableDataSourceProxy を追加しました。[Seasar-user:3660]
- nullのインジェクションでエラーにならないようにしました。[http://d.hatena.ne.jp/tanigon/20060523#p1]
- 名前によるAutoBindingで、パッケージ名つきのコンポーネント名の場合(ex:aaa_hoge)、パッケージ名を抜いた部分(hoge)が、プロパティ名と一致する場合に自動でバインディングするようにしました。
- セッターインジェクションとフィールドインジェクションを明示的に指定できるようにしました.
- @PersistenceContext・@PersistenceUnit・@Resource アノテーションをサポートしました.
- EJB3,JPA サポートのための javaee5.dicon を追加しました.
- @BInding アノテーションをフィールドに指定できるようにしました.
- j2ee.dicon,jta.dicon,ejbtx.dicon をs2-extension-x.y.z.jar に含めるようにしました.
- javaee5.dicon,ejb3tx.dicon,jpa.dicon をs2-tiger-x.y.z.jar に含めるようにしました.
- SSQLException#getMessageに原因となったSQL文を含めるようにしました。
- SSQLException#getSqlで原因となったSQL文を取得できるようにしました。
- ComponentAutoRegister を WebLogic 固有の zip URL に対応しました.[Seasar-user:3658]
- BeanDesc からメソッド及びコンストラクタの引数名を取得できるようにしました.
- ConfigurableStatementFactoryを追加し、PreparedStatementのfetchSizeとmaxRowsをdiconから設定できるようにしました。[Seasar-user:3692][DAO-2]
- ExternalContextの情報にMapでアクセスできるようにしました。
- Hotswapを廃止しました。
- requestのparamterやattributeの名前とプロパティ名が一致した場合に、自動で設定を行うexternalBinding機能を実装しました。
- Sessionで管理されているコンポーネントがHOT deployで変更された場合でも、コンポーネントの状態が引き継がれるようにしました。
- メッセージファイルに S2FrameworkMessages.properties のような長い名前を利用できるようにしました.
- EclipseUtil を削除しました.代わりに ResourceUtil#getBuildDir() を使用してください.
- S2Tx の requiredTx および requiresNewTx において,setRollbackOnly() が設定された場合でも commit() しようとして例外が発生していた問題を修正しました.
2006/06/05†
2.3.9からの変更点は次の通りです。
- AspectAutoRegister を使用するとパターンにマッチしないクラスに対してもアスペクトが適用されてしまう問題を修正しました.[Seasar-user:3761]
2006/06/02†
2.3.8からの変更点は次の通りです。
- S2AOPで、Genericな戻り値を持つメソッドにアスペクトを適用するとエラーが発生していた問題を修正しました。[Seasar-user:3293]
- MetaAutoRegisterを追加しました.[Seasar-user:3669]
- SelectableDataSourceProxy を追加しました.[Seasar-user:3660]
- nullのインジェクションでエラーにならないようにしました。[http://d.hatena.ne.jp/tanigon/20060523#p1]
- ComponentAutoRegister を WebLogic 固有の zip URL に対応しました.[Seasar-user:3658]
- BeanDesc からメソッド及びコンストラクタの引数名を取得できるようにしました.
- SSQLException#getMessageに原因となったSQL文を含めるようにしました。
- SSQLException#getSqlで原因となったSQL文を取得できるようにしました。
2006/05/09†
2.4.0-beta-1からの変更点は次の通りです。
- HOT deployを実装しました。
- S2AOPで、Genericな戻り値を持つメソッドにアスペクトを適用するとエラーが発生していた問題を修正しました。[Seasar-user:3293]
- S2TestCase継承クラスで、super.runTestの前後へ処理を加えられるようになりました。[Seasar-user:3403]
- HotSwapで、継承関係にある複数のクラスが同じインタフェースを実装している場合に発生していた問題を修正しました。[Seasar-user:3466]
- コンポーネント取得時のパフォーマンスを改善しました。
- AutoRegisterでAutoBindingModeを指定できるようになりました。
- S2TestCase#readXlsWriteDbでbooleanの扱いがおかしかったのを修正しました。[Seasar-user:3524]
2006/04/24†
2.3.7からの変更点は次の通りです。
- S2AOPで、Genericな戻り値を持つメソッドにアスペクトを適用するとエラーが発生していた問題を修正しました。
- S2TestCase継承クラスで、super.runTestの前後へ処理を加えられるようになりました。
- HotSwapで、継承関係にある複数のクラスが同じインタフェースを実装している場合に発生していた問題を修正しました。
- コンポーネント取得時のパフォーマンスを改善しました。
- AutoRegisterでAutoBindingModeを指定できるようになりました。
2006/03/27†
2.4では、次の通りに機能追加されました。
- EJB3の実装を追加しました。
- InterTypeを追加しました。
- Servlet用のjarファイルがなくても稼動できるようにしました。
2006/02/23†
2.3.6からの変更点は次の通りです。
- S2UnitでPostgreSQLを使う場合に、Excelにデータが定義されていなくて、
対象となるカラムの型がString以外の場合に、例外が発生していたのを修正しました。(Seasar-user:3182)
- interfaceへHotswapを適用した場合に、そのinterfaceがHotswapProxyから
抜けていた(親interfaceのみを対象にしていた)問題を修正しました。
2006/02/15†
2.3.5からの変更点は次の通りです。
- S2UnitでPostgreSQLを使う場合に、Excelにデータが定義されていなくて、
対象となるカラムの型がString以外の場合に、例外が発生していたのを修正しました。(Seasar-user:3182)
2006/02/13†
2.3.4からの変更点は次の通りです。
2005/12/02†
2.3.3からの変更点は次の通りです。
- *ComponentAutoRegisterを使ったときに、Aspectアノテーションが無効になる問題を修正しました。
- diconファイル中のognl式でクラスを参照するような式が書かれた場合に、
container生成時に指定されたクラスローダを見ずにognl.jarをロードしたクラスローダを見てしまう問題に対応しました。
- s2-frameworkに含まれるJDBC関連クラスをs2-extensionへ移しました。
connectionUtil, DatabaseMetaDataUtil, DataSourceUtilのパッケージ名がorg.seasar.extension.jdbc.utilへ変更になります。
- S2TestCaseにてsetUpAfterContainerInitメソッドとtearDownBeforeContainerDestroyメソッドにロジックを持つようになりました。
(今までは空実装)サブクラスでオーラーライドする場合はsuperの同メソッドを実行するようにしてください。
- Maven2のgroupId・artifactIdを変更しました。
2005/11/25†
2.3.2からの変更点は次の通りです。
- MockServletContextImplを変更しました。
- 機能面での変更はありません。
S2JSFでの単体テストに利用している箇所のみの変更ですので、2.3.2を利用されている方はバージョンアップの必要はありません。
2005/11/21†
2.3.1からの変更点は次の通りです。
- InitMethodアノテーションを追加しました。
- *AutoRegisterはInitMethodアノテーションを使うようになったので、diconファイルにregisterAllを記述する必要がなくなりました。
- S2JDBCでBINARYとBINARY_STREAMが逆になっていたのを修正しました。
2005/11/08†
2.3.0からの変更点は次の通りです。
- S2JDBCでInputStreamに対応しました。
- 自動登録系で、registAllメソッドをregisterAllに変更しました。
- 特定のインターフェースを実装したクラスにアスペクトを自動登録する機能を追加しました。