[seasar-s2dao-dev:421] Re: [Seasar-user:9751] Re:[S2Pager]拡張PagerCondition使用時にSQLException

SETO Azusa [E-MAIL ADDRESS DELETED]
2007年 8月 14日 (火) 13:32:37 JST


せとあずさです。

On Tue, 14 Aug 2007 04:30:08 +0900
Toshihiro Nakamura <[E-MAIL ADDRESS DELETED]> wrote:

> j2ee-limit-offset.diconは使用しない方向で対応してみました。
> 
> 対応としては、s2daoプロジェクトのj2ee.diconや
> s2-dao-s24-testのjdbc.diconからはこれまでのpagingの
> 設定は削除し、新しいpagingの設定として使用できるようにしました。
> (したがって、j2ee-limit-offset.diconとして別途用意する必要は
> なくなりました)
> dao-limit-offset.diconはj2ee.diconをインクルードするようにしました。

まずこちらですが、src/test/resources/j2ee.diconは
配布物のzip中に従前のPager設定のサンプルとして同梱
されている(build.xml参照)のでpaging設定を丸ごと消
されるとちょっと困ります。

> 対応としては、s2daoプロジェクトのj2ee.diconや
> s2-dao-s24-testのjdbc.diconからはこれまでのpagingの
> 設定は削除し、新しいpagingの設定として使用できるようにしました。
> (したがって、j2ee-limit-offset.diconとして別途用意する必要は
> なくなりました)
> dao-limit-offset.diconはj2ee.diconをインクルードするようにしました。
> 

テスト用のpager設定はこの方法のほうがすっきりしていいと
思うのですが、ユーザ向けの設定に関しては工夫の余地が
あると思います。

(1)PagerResultSetFactoryWrapperをそのまま使う→j2ee.dicon
(2)PagerResultSetFactoryLimitOffsetWrapperをそのまま使う→j2ee.dicon
までは従来通りとして、
(3)-a PagingSQLRewriterをdao.diconに定義する
(3)-b PagingSQLRewriterをj2ee.diconに定義して
       DaoMetaDataFactoryImplにバインディング
      (要はj2ee.diconに
       <component class="org.seasar.dao.pager.LimitOffsetPagingSQLRewriter"/>
      を定義する)

今までの話だと(3)-aだと思いますが、(3)-bのほうがPagerの設定は
j2ee.diconに記述するという説明で統一できて、dao.diconも変更不
要という利点があると思うのですが、どうでしょう?

-- 
せとあずさ
[E-MAIL ADDRESS DELETED]
http://www.fieldnotes.jp/d/


seasar-s2dao-dev メーリングリストの案内