[seasar-s2dao-dev:445] Re: DAO-110に対応しました

JUNDU [E-MAIL ADDRESS DELETED]
2007年 8月 20日 (月) 15:36:25 JST


JUNDUです。

Toshihiro Nakamura wrote:
> DaoMetaDataFactoryImpl#initializeの処理ってdao.diconに
> 追い出せたらすっきりしますね。。。
> きっと、dao.diconの修正によって利用者に影響が出ないように
> 配慮している結果だと思いますが。
> 
> # 個人的にはドキュメントなどでちゃんと周知すれば
> # 一番適切な形にdao.diconを修正していってもいいんじゃないかと
> # 思っています。

 ここについて、前々からちょっと気になってはいました。やっぱり、dao.dicon
をカスタマイズするとバージョンアップで動かなくなることがある、何より原因が
分かりにくいのが問題かなと思います。

 ドキュメントでの周知徹底と合わせて、仮に古いdao.diconを使っていたら、
警告ログ(あるいは実行時エラー?)が表示されるようなイメージなら、もう少し
やりやすい気がしてました。

 以下思いつきですが、例えばdao.diconにバージョン番号を定義して、クラス
ファイル内のバージョン番号と一致しないとエラーになるコンポーネントを追加
するとか。

<component class="org.seasar.dao.impl.VersionChecker" instance="singleton">
    <initMethod name="checkDicon">
        <arg>"1.0"</arg>
    </initMethod>
</component>

 もっと良い方法がある気がしますが、配布したdao.diconとカスタマイズの元にした
dao.diconの識別が出来れば、配布するdao.diconの修正がしやすくなるのではないで
しょうか。


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