Manually invoking setObjectId() in the middle of CDO lifecycle isn't a good idea, because data object might have already been registered in context with another ObjectId. What CayenneRuntimeExeptions are you having and what is your version of Cayenne?
2009/7/29 Juergen Saar <[email protected]> > Hi, > > I'm working on an 20 year old project with meaningful primary keys. > > Till now, we used cayenne only for reading but now we are working on the > first 'real' Web-Components that handle Order-Data. > > So I have to create the primary key myself. > > In the Modeller I created ObjAttributes for the PK-Fields and use the > setters to transfer the PK-Values to the Business-Object. > > In most cases this seems to work, only sometimes a CayenneRuntimeExeption > tells me some Problems about temporary ObjectIds. The Data are stored > pretty > correct in the Database Tables. > > In some cases, especially on 1:1 Relations there are Problems with the > Foreign Keys. > > So I try to setup my own ObjectId with the generated Values for the primary > Key and put this into the DataObject by setObjectId(). > > This brings the whole BusinessObject in trouble. > > Is there a correct way to solve this problem? > -Juergen- >
