[Seasar-user:14011] [DBFlute]deleteNonstrictの挙動について質問

k.moriwaki [E-MAIL ADDRESS DELETED]
2008年 4月 30日 (水) 16:23:25 JST


森脇と申します。
BehaviorのdeleteNonstrictの挙動について質問です。

Seasar Conference 2007 Autumnの「現場ソリューションDBFlute.pdf」を
参考にしているのですが、103ページに記載されている「Behaviorの更新系メソッド」の
注意書きで
 updateNonstrict()とdeleteNonstrict()は、対象のEntityが存在しない場合に
 EntityAlreadyDeletedException が発生します。
とあるのですが、UTを作成して実行してみるとEntityAlreadyUpdatedExceptionが
発生します。

環境と発生時のログは以下になります。
なにか設定が必要なのでしょうか?自動生成時のプロパティファイルは0.6.9に付属していた
ファイルをほぼそのまま使っています。

環境
  Seasar 2.4.25
  S2Dao 1.0.48
  DBFlute 0.6.9

ログ
hoge.fugo.db.common.exception.EntityAlreadyUpdatedException:
[EDAO0005]更新の対象は1行(実際:0)でなければなりません。({999,null,null,null,null,null,null})
	at hoge.fugo.db.common.s2dao.S2DaoInterceptor.dispatchInvoking(S2DaoInterceptor.java:134)
	at hoge.fugo.db.common.s2dao.S2DaoInterceptor.invoke(S2DaoInterceptor.java:67)
	at hoge.fugo.db.exdao.AaaDao$$EnhancedByS2AOP$$1f365b2$$MethodInvocation$$deleteNonstrict12.proceed(MethodInvocationClassGenerator.java)
	at hoge.fugo.db.exdao.AaaDao$$EnhancedByS2AOP$$1f365b2.deleteNonstrict(AaaDao$$EnhancedByS2AOP$$1f365b2.java)
	at hoge.fugo.db.bsbhv.BsAaaBhv.delegateDeleteNonstrict(BsAaaBhv.java:461)
	at hoge.fugo.db.bsbhv.BsAaaBhv$11.callbackDelegateDeleteNonstrict(BsAaaBhv.java:333)
	at hoge.fugo.db.bsbhv.BsAaaBhv$11.callbackDelegateDeleteNonstrict(BsAaaBhv.java:332)
	at hoge.fugo.db.common.bhv.AbstractBehaviorWritable.helpDeleteNonstrictInternally(AbstractBehaviorWritable.java:251)
	at hoge.fugo.db.bsbhv.BsAaaBhv.deleteNonstrict(BsAaaBhv.java:332)
	at hoge.fugo.tender.logic.impl.AaaLogicImpl.deleteAaa(AaaLogicImpl.java:91)
	at hoge.fugo.tender.logic.impl.AaaLogicImplTest.testDeleteAaa_2(AaaLogicImplTest.java:128)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.seasar.framework.unit.S2TestMethodRunner.executeMethodBody(S2TestMethodRunner.java:678)
	at org.seasar.framework.unit.S2TestMethodRunner.executeMethod(S2TestMethodRunner.java:653)
	at org.seasar.framework.unit.S2TestMethodRunner.runTest(S2TestMethodRunner.java:619)
	at org.seasar.framework.unit.S2TestMethodRunner.runMethod(S2TestMethodRunner.java:255)
	at org.seasar.framework.unit.S2TestMethodRunner.run(S2TestMethodRunner.java:171)
	at org.seasar.framework.unit.S2TestClassMethodsRunner.invokeTestMethod(S2TestClassMethodsRunner.java:227)
	at org.seasar.framework.unit.S2TestClassMethodsRunner.run(S2TestClassMethodsRunner.java:89)
	at org.seasar.framework.unit.S2TestClassRunner.run(S2TestClassRunner.java:67)
	at org.seasar.framework.unit.Seasar2.run(Seasar2.java:168)
	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:38)
	at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)


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