Uploaded image for project: 'S2Dao'
  1. S2Dao
  2. DAO-101

ModifiedOnly() で主キーのカラム名に "_"( アンダースコア ) が含まれる場合にエラーが発生する場合がある([seasar-s2dao-dev:284] )

XMLWordPrintable

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major Major
    • 1.0.44
    • Affects Version/s: 1.0.43
    • Component/s: s2dao
    • None

      updateModifiedOnly(Bean bean)メソッドを定義して、setter
      が呼び出された項目のみDBを更新しています。
      通常、引数のBeanにPKがセットされていない場合はupdateの処
      理がskipされるはずですが、Exceptionが発生してしまいます

      現象を確認したところ、更新対象テーブルのPKのカラム名に"_"(
      アンダースコア)が含まれている場合に発生するようです。

      Exceptionのログは以下のとおりです。(都合により先頭の数行
      のみ抜粋しています。)
      org.seasar.framework.beans.PropertyNotFoundRuntimeException:
      [ESSR0065]
      クラス(××.××Bean)のプロパティ(OPE_ID)が見つかりませ

      at
      org.seasar.dao.impl.DtoMetaDataImpl.getPropertyType(DtoMetaDataImpl.java:86)
      at
      org.seasar.dao.impl.UpdateModifiedOnlyCommand.createNoUpdateLogMessage(UpdateModifiedOnlyCommand.java:84)
      at
      org.seasar.dao.impl.UpdateModifiedOnlyCommand.execute(UpdateModifiedOnlyCommand.java:53)
      at
      org.seasar.dao.interceptors.S2DaoInterceptor.invoke(S2DaoInterceptor.java:53)
      at
      org.seasar.dao.pager.PagerS2DaoInterceptorWrapper.invoke(PagerS2DaoInterceptorWrapper.java:71)

      ちなみにPKのカラム名とテーブルに対応するBeanのプロパティ
      はColumnアノテーションで
      マッピングできていることは確認できています。

            Assignee:
            manhole manhole
            Reporter:
            azusa azusa
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: