upendra@icore
Apr 1st, 2008, 12:26 AM
I am using hibernates and spring, when i tried to update data the by passing a pojo object it is raising "org.hibernate.StaleStateException:" which is not catched in the catch(RuntimeException re) in spring....... so how should i catch that exception in spring frame work.
I am sending you the entire exception below
2008-04-01 10:31:02,203 DEBUG [org.hibernate.SQL] - <update edulmpdb.student_personal_advisor set student_id=?, staff_id=?, last_updated=? where id=?>
2008-04-01 10:31:02,250 ERROR [org.hibernate.jdbc.AbstractBatcher] - <Exception executing batch: >
org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
at org.hibernate.jdbc.Expectations$BasicExpectation.c heckBatched(Expectations.java:61)
at org.hibernate.jdbc.Expectations$BasicExpectation.v erifyOutcome(Expectations.java:46)
at org.hibernate.jdbc.BatchingBatcher.checkRowCounts( BatchingBatcher.java:68)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch( BatchingBatcher.java:48)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(Ab stractBatcher.java:246)
at org.hibernate.engine.ActionQueue.executeActions(Ac tionQueue.java:237)
at org.hibernate.engine.ActionQueue.executeActions(Ac tionQueue.java:142)
at org.hibernate.event.def.AbstractFlushingEventListe ner.performExecutions(AbstractFlushingEventListene r.java:298)
at org.hibernate.event.def.DefaultFlushEventListener. onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.j ava:1000)
at org.hibernate.impl.SessionImpl.managedFlush(Sessio nImpl.java:338)
at org.hibernate.transaction.JDBCTransaction.commit(J DBCTransaction.java:106)
at org.springframework.orm.hibernate3.HibernateTransa ctionManager.doCommit(HibernateTransactionManager. java:578)
at org.springframework.transaction.support.AbstractPl atformTransactionManager.processCommit(AbstractPla tformTransactionManager.java:662)
at org.springframework.transaction.support.AbstractPl atformTransactionManager.commit(AbstractPlatformTr ansactionManager.java:632)
at org.springframework.transaction.interceptor.Transa ctionAspectSupport.commitTransactionAfterReturning (TransactionAspectSupport.java:314)
at org.springframework.transaction.interceptor.Transa ctionInterceptor.invoke(TransactionInterceptor.jav a:116)
at org.springframework.aop.framework.ReflectiveMethod Invocation.proceed(ReflectiveMethodInvocation.java :171)
at org.springframework.aop.interceptor.ExposeInvocati onInterceptor.invoke(ExposeInvocationInterceptor.j ava:89)
at org.springframework.aop.framework.ReflectiveMethod Invocation.proceed(ReflectiveMethodInvocation.java :171)
at org.springframework.aop.framework.JdkDynamicAopPro xy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy7.updateStudentPersonalAdvisor(Unknown Source)
at com.icore.lms.jutest.core.data.dao.StudentPersonal AdvisorDAOImplTest.testUpdateStudentPersonalAdviso r(StudentPersonalAdvisorDAOImplTest.java:236)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknow n Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.junit.internal.runners.TestMethodRunner.execut eMethodBody(TestMethodRunner.java:99)
at org.junit.internal.runners.TestMethodRunner.runUnp rotected(TestMethodRunner.java:81)
at org.junit.internal.runners.BeforeAndAfterRunner.ru nProtected(BeforeAndAfterRunner.java:34)
at org.junit.internal.runners.TestMethodRunner.runMet hod(TestMethodRunner.java:75)
at org.junit.internal.runners.TestMethodRunner.run(Te stMethodRunner.java:45)
at org.junit.internal.runners.TestClassMethodsRunner. invokeTestMethod(TestClassMethodsRunner.java:66)
at org.junit.internal.runners.TestClassMethodsRunner. run(TestClassMethodsRunner.java:35)
at org.junit.internal.runners.TestClassRunner$1.runUn protected(TestClassRunner.java:42)
at org.junit.internal.runners.BeforeAndAfterRunner.ru nProtected(BeforeAndAfterRunner.java:34)
at org.junit.internal.runners.TestClassRunner.run(Tes tClassRunner.java:52)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestR eference.run(JUnit4TestReference.java:38)
at org.eclipse.jdt.internal.junit.runner.TestExecutio n.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.runTests(RemoteTestRunner.java:460)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.runTests(RemoteTestRunner.java:673)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.run(RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.main(RemoteTestRunner.java:196)
2008-04-01 10:31:02,265 ERROR [org.hibernate.event.def.AbstractFlushingEventListe ner] - <Could not synchronize database state with session>
org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
at org.hibernate.jdbc.Expectations$BasicExpectation.c heckBatched(Expectations.java:61)
at org.hibernate.jdbc.Expectations$BasicExpectation.v erifyOutcome(Expectations.java:46)
at org.hibernate.jdbc.BatchingBatcher.checkRowCounts( BatchingBatcher.java:68)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch( BatchingBatcher.java:48)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(Ab stractBatcher.java:246)
at org.hibernate.engine.ActionQueue.executeActions(Ac tionQueue.java:237)
at org.hibernate.engine.ActionQueue.executeActions(Ac tionQueue.java:142)
at org.hibernate.event.def.AbstractFlushingEventListe ner.performExecutions(AbstractFlushingEventListene r.java:298)
at org.hibernate.event.def.DefaultFlushEventListener. onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.j ava:1000)
at org.hibernate.impl.SessionImpl.managedFlush(Sessio nImpl.java:338)
at org.hibernate.transaction.JDBCTransaction.commit(J DBCTransaction.java:106)
at org.springframework.orm.hibernate3.HibernateTransa ctionManager.doCommit(HibernateTransactionManager. java:578)
at org.springframework.transaction.support.AbstractPl atformTransactionManager.processCommit(AbstractPla tformTransactionManager.java:662)
at org.springframework.transaction.support.AbstractPl atformTransactionManager.commit(AbstractPlatformTr ansactionManager.java:632)
at org.springframework.transaction.interceptor.Transa ctionAspectSupport.commitTransactionAfterReturning (TransactionAspectSupport.java:314)
at org.springframework.transaction.interceptor.Transa ctionInterceptor.invoke(TransactionInterceptor.jav a:116)
at org.springframework.aop.framework.ReflectiveMethod Invocation.proceed(ReflectiveMethodInvocation.java :171)
at org.springframework.aop.interceptor.ExposeInvocati onInterceptor.invoke(ExposeInvocationInterceptor.j ava:89)
at org.springframework.aop.framework.ReflectiveMethod Invocation.proceed(ReflectiveMethodInvocation.java :171)
at org.springframework.aop.framework.JdkDynamicAopPro xy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy7.updateStudentPersonalAdvisor(Unknown Source)
at com.icore.lms.jutest.core.data.dao.StudentPersonal AdvisorDAOImplTest.testUpdateStudentPersonalAdviso r(StudentPersonalAdvisorDAOImplTest.java:236)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknow n Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.junit.internal.runners.TestMethodRunner.execut eMethodBody(TestMethodRunner.java:99)
at org.junit.internal.runners.TestMethodRunner.runUnp rotected(TestMethodRunner.java:81)
at org.junit.internal.runners.BeforeAndAfterRunner.ru nProtected(BeforeAndAfterRunner.java:34)
at org.junit.internal.runners.TestMethodRunner.runMet hod(TestMethodRunner.java:75)
at org.junit.internal.runners.TestMethodRunner.run(Te stMethodRunner.java:45)
at org.junit.internal.runners.TestClassMethodsRunner. invokeTestMethod(TestClassMethodsRunner.java:66)
at org.junit.internal.runners.TestClassMethodsRunner. run(TestClassMethodsRunner.java:35)
at org.junit.internal.runners.TestClassRunner$1.runUn protected(TestClassRunner.java:42)
at org.junit.internal.runners.BeforeAndAfterRunner.ru nProtected(BeforeAndAfterRunner.java:34)
at org.junit.internal.runners.TestClassRunner.run(Tes tClassRunner.java:52)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestR eference.run(JUnit4TestReference.java:38)
at org.eclipse.jdt.internal.junit.runner.TestExecutio n.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.runTests(RemoteTestRunner.java:460)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.runTests(RemoteTestRunner.java:673)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.run(RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.main(RemoteTestRunner.java:196)
plz can any one suggest me..
Thanking you in forward.
upendra@icore..
I am sending you the entire exception below
2008-04-01 10:31:02,203 DEBUG [org.hibernate.SQL] - <update edulmpdb.student_personal_advisor set student_id=?, staff_id=?, last_updated=? where id=?>
2008-04-01 10:31:02,250 ERROR [org.hibernate.jdbc.AbstractBatcher] - <Exception executing batch: >
org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
at org.hibernate.jdbc.Expectations$BasicExpectation.c heckBatched(Expectations.java:61)
at org.hibernate.jdbc.Expectations$BasicExpectation.v erifyOutcome(Expectations.java:46)
at org.hibernate.jdbc.BatchingBatcher.checkRowCounts( BatchingBatcher.java:68)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch( BatchingBatcher.java:48)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(Ab stractBatcher.java:246)
at org.hibernate.engine.ActionQueue.executeActions(Ac tionQueue.java:237)
at org.hibernate.engine.ActionQueue.executeActions(Ac tionQueue.java:142)
at org.hibernate.event.def.AbstractFlushingEventListe ner.performExecutions(AbstractFlushingEventListene r.java:298)
at org.hibernate.event.def.DefaultFlushEventListener. onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.j ava:1000)
at org.hibernate.impl.SessionImpl.managedFlush(Sessio nImpl.java:338)
at org.hibernate.transaction.JDBCTransaction.commit(J DBCTransaction.java:106)
at org.springframework.orm.hibernate3.HibernateTransa ctionManager.doCommit(HibernateTransactionManager. java:578)
at org.springframework.transaction.support.AbstractPl atformTransactionManager.processCommit(AbstractPla tformTransactionManager.java:662)
at org.springframework.transaction.support.AbstractPl atformTransactionManager.commit(AbstractPlatformTr ansactionManager.java:632)
at org.springframework.transaction.interceptor.Transa ctionAspectSupport.commitTransactionAfterReturning (TransactionAspectSupport.java:314)
at org.springframework.transaction.interceptor.Transa ctionInterceptor.invoke(TransactionInterceptor.jav a:116)
at org.springframework.aop.framework.ReflectiveMethod Invocation.proceed(ReflectiveMethodInvocation.java :171)
at org.springframework.aop.interceptor.ExposeInvocati onInterceptor.invoke(ExposeInvocationInterceptor.j ava:89)
at org.springframework.aop.framework.ReflectiveMethod Invocation.proceed(ReflectiveMethodInvocation.java :171)
at org.springframework.aop.framework.JdkDynamicAopPro xy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy7.updateStudentPersonalAdvisor(Unknown Source)
at com.icore.lms.jutest.core.data.dao.StudentPersonal AdvisorDAOImplTest.testUpdateStudentPersonalAdviso r(StudentPersonalAdvisorDAOImplTest.java:236)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknow n Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.junit.internal.runners.TestMethodRunner.execut eMethodBody(TestMethodRunner.java:99)
at org.junit.internal.runners.TestMethodRunner.runUnp rotected(TestMethodRunner.java:81)
at org.junit.internal.runners.BeforeAndAfterRunner.ru nProtected(BeforeAndAfterRunner.java:34)
at org.junit.internal.runners.TestMethodRunner.runMet hod(TestMethodRunner.java:75)
at org.junit.internal.runners.TestMethodRunner.run(Te stMethodRunner.java:45)
at org.junit.internal.runners.TestClassMethodsRunner. invokeTestMethod(TestClassMethodsRunner.java:66)
at org.junit.internal.runners.TestClassMethodsRunner. run(TestClassMethodsRunner.java:35)
at org.junit.internal.runners.TestClassRunner$1.runUn protected(TestClassRunner.java:42)
at org.junit.internal.runners.BeforeAndAfterRunner.ru nProtected(BeforeAndAfterRunner.java:34)
at org.junit.internal.runners.TestClassRunner.run(Tes tClassRunner.java:52)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestR eference.run(JUnit4TestReference.java:38)
at org.eclipse.jdt.internal.junit.runner.TestExecutio n.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.runTests(RemoteTestRunner.java:460)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.runTests(RemoteTestRunner.java:673)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.run(RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.main(RemoteTestRunner.java:196)
2008-04-01 10:31:02,265 ERROR [org.hibernate.event.def.AbstractFlushingEventListe ner] - <Could not synchronize database state with session>
org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
at org.hibernate.jdbc.Expectations$BasicExpectation.c heckBatched(Expectations.java:61)
at org.hibernate.jdbc.Expectations$BasicExpectation.v erifyOutcome(Expectations.java:46)
at org.hibernate.jdbc.BatchingBatcher.checkRowCounts( BatchingBatcher.java:68)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch( BatchingBatcher.java:48)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(Ab stractBatcher.java:246)
at org.hibernate.engine.ActionQueue.executeActions(Ac tionQueue.java:237)
at org.hibernate.engine.ActionQueue.executeActions(Ac tionQueue.java:142)
at org.hibernate.event.def.AbstractFlushingEventListe ner.performExecutions(AbstractFlushingEventListene r.java:298)
at org.hibernate.event.def.DefaultFlushEventListener. onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.j ava:1000)
at org.hibernate.impl.SessionImpl.managedFlush(Sessio nImpl.java:338)
at org.hibernate.transaction.JDBCTransaction.commit(J DBCTransaction.java:106)
at org.springframework.orm.hibernate3.HibernateTransa ctionManager.doCommit(HibernateTransactionManager. java:578)
at org.springframework.transaction.support.AbstractPl atformTransactionManager.processCommit(AbstractPla tformTransactionManager.java:662)
at org.springframework.transaction.support.AbstractPl atformTransactionManager.commit(AbstractPlatformTr ansactionManager.java:632)
at org.springframework.transaction.interceptor.Transa ctionAspectSupport.commitTransactionAfterReturning (TransactionAspectSupport.java:314)
at org.springframework.transaction.interceptor.Transa ctionInterceptor.invoke(TransactionInterceptor.jav a:116)
at org.springframework.aop.framework.ReflectiveMethod Invocation.proceed(ReflectiveMethodInvocation.java :171)
at org.springframework.aop.interceptor.ExposeInvocati onInterceptor.invoke(ExposeInvocationInterceptor.j ava:89)
at org.springframework.aop.framework.ReflectiveMethod Invocation.proceed(ReflectiveMethodInvocation.java :171)
at org.springframework.aop.framework.JdkDynamicAopPro xy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy7.updateStudentPersonalAdvisor(Unknown Source)
at com.icore.lms.jutest.core.data.dao.StudentPersonal AdvisorDAOImplTest.testUpdateStudentPersonalAdviso r(StudentPersonalAdvisorDAOImplTest.java:236)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknow n Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.junit.internal.runners.TestMethodRunner.execut eMethodBody(TestMethodRunner.java:99)
at org.junit.internal.runners.TestMethodRunner.runUnp rotected(TestMethodRunner.java:81)
at org.junit.internal.runners.BeforeAndAfterRunner.ru nProtected(BeforeAndAfterRunner.java:34)
at org.junit.internal.runners.TestMethodRunner.runMet hod(TestMethodRunner.java:75)
at org.junit.internal.runners.TestMethodRunner.run(Te stMethodRunner.java:45)
at org.junit.internal.runners.TestClassMethodsRunner. invokeTestMethod(TestClassMethodsRunner.java:66)
at org.junit.internal.runners.TestClassMethodsRunner. run(TestClassMethodsRunner.java:35)
at org.junit.internal.runners.TestClassRunner$1.runUn protected(TestClassRunner.java:42)
at org.junit.internal.runners.BeforeAndAfterRunner.ru nProtected(BeforeAndAfterRunner.java:34)
at org.junit.internal.runners.TestClassRunner.run(Tes tClassRunner.java:52)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestR eference.run(JUnit4TestReference.java:38)
at org.eclipse.jdt.internal.junit.runner.TestExecutio n.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.runTests(RemoteTestRunner.java:460)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.runTests(RemoteTestRunner.java:673)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.run(RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.main(RemoteTestRunner.java:196)
plz can any one suggest me..
Thanking you in forward.
upendra@icore..