Invalid Rowid Error on Insert Row
I have a table on which i don't have any primary key defined (or don't want to define any primary key on it). The EO has therefore ROWID generated by wizard as primary key. Every thing works alright on updating records. But during the insert i get a error "Unable to save the changes oracle.jbo.DMLException: JBO-26080: Error while selecting entity for PeriodSourceEO". BTW i am using following code to insert a row.
PeriodVOImpl perGlobalVO = getPeriodVO();
PeriodVORowImpl perGlobalRow = (PeriodVORowImpl) perGlobalVO.createRow();
perGlobalRow.setNewRowState(Row.STATUS_NEW);
perGlobalVO.insertRow(perGlobalRow);
perGlobalVO.setCurrentRow(perGlobalRow);
I get the error on committing the transaction.
The error trace is
<BaseSQLBuilderImpl> <doRefreshSQL> [14182] Executing Refresh SQL...SELECT ROWID FROM TPOVPERIODSOURCE WHERE ROWID=?
<BaseSQLBuilderImpl> <bindWhereAttrValue> [14183] Where binding param 1: 686984
<BaseSQLBuilderImpl> <doRefreshSQL> [14184] SQL failure in doRefreshSQL - 'ORA-01410: invalid ROWID
Is insert not possibler using ROWID and I have to define a primary key to table? Or can someone point out workaround to it.