I am calling the remove method on an entity bean using JBoss 3.2.3 and an Oracle 8i database. When the method is called I receive the following error message:
2004-03-18 12:59:44,921 DEBUG [com.genecodes.jboss.interceptors.MetaDataInterceptor] ****EJB Called: Oracle8iSeqCol_AnalysisInfo
2004-03-18 12:59:44,921 DEBUG [com.genecodes.jboss.interceptors.MetaDataInterceptor] Start method=remove
2004-03-18 12:59:44,921 DEBUG [com.genecodes.jboss.interceptors.MetaDataInterceptor] Invoke: [Primary key: 111] remove()
2004-03-18 12:59:44,921 DEBUG [com.genecodes.oracle8iseqcol.analysisinfo.AnalysisInfoBean] ejbStore
2004-03-18 12:59:44,937 ERROR [com.genecodes.jboss.interceptors.MetaDataInterceptor] TransactionRolledbackLocalException, causedBy:
javax.ejb.EJBException: Update failed. Expected one affected row: rowsAffected=0id=Primary key: 111
If I use a SQLServer2000 database and try to remove the same entity I get the following chain of events:
2004-03-18 13:36:29,468 DEBUG [com.genecodes.jboss.interceptors.MetaDataInterceptor] ****EJB Called: MSSQLServer2000MetaData_AnalysisInfo
2004-03-18 13:36:29,468 DEBUG [com.genecodes.jboss.interceptors.MetaDataInterceptor] Start method=remove
2004-03-18 13:36:29,468 DEBUG [com.genecodes.jboss.interceptors.MetaDataInterceptor] Invoke: [Primary key: 121] remove()
2004-03-18 13:36:29,468 DEBUG [com.genecodes.mssqlserver2000metadata.analysisinfo.AnalysisInfoBean] ejbStore
2004-03-18 13:36:29,468 DEBUG [com.genecodes.mssqlserver2000metadata.analysisinfo.AnalysisInfoBean] ejbStore
2004-03-18 13:36:29,468 DEBUG [com.genecodes.mssqlserver2000metadata.analysisinfo.AnalysisInfoBean] ejbRemove
Does anyone know what the issue could be causing this annomaly?
Thanks
Jerry
The oracle database was using the Oracle Sequence paradigm to generate the primary keys. I was applying my own UID generator which was causing the annomaly. After setting up my jbosscmp-jdbc.xml correctly the problem is solved.