[Seasar-user:10437] Re: [S2Dao]VersionNoによる排他制御が2回目の更新以降、正しく行われない。

nobu [E-MAIL ADDRESS DELETED]
2007年 9月 10日 (月) 14:31:28 JST


近藤(nobu)です。

中村さん、ご回答ありがとうございます。

Toshihiro Nakamura さんは書きました:
> 中村(taedium)です。
> WHERE句のversionnoにはDaoのupdateメソッドに渡すEntityのversionno
> プロパティの値がそのまま設定されるはずです。
> また、SET句にはWHERE句のversionnoに1を足した値が設定されるように
> なっています。
> 2回目の呼び出しのときのEntityのversionnoが0のままになって
> updateメソッドにわたっているのではと思います。

おっしゃる通りですm(_ _)m
皆様、気づくのが早くて素晴らしいです。


ひがさん、ご回答ありがとうございます。

> versionNoPropertyを使うのではなく、プロパティ名をversionNoに
> するとどうなるでしょうか。

ビンゴです。setter/getterをsetVersionNo,getVersionNoに変更した所、
versionNoPropertyを使用しなくても動作しました。Doltengで自動生成
させたままの部分だったので、見過ごしていました。


> 後、convertDtoToTableEntityメソッドを自作するのではなく、
> S2Dxoを使ったほうがコーディングしなくても良いので楽できます。

使ってみました。ものすごく楽です!
こういう時に使うんですね、S2Dxoって・・・。勉強になりました。





Seasar-user メーリングリストの案内