Bill,
the only thing I can see missing from the code is
"ctxt.commitChanges()", but I assume you just forgot to include it in
your message... still worth checking though :-).
If you still have this problem, please submit a bug report via JIRA at
http://objectstyle.org/cayenne/bugs-features.html and attach your
DataMap to the report. I am not aware of any cases when
"ctxt.deleteObject(obj);" is quietly ignored.
Andrus
On Mar 31, 2004, at 6:32 AM, Bill Fan wrote:
> Hi,
>
> I'm using the latest Cayenne 1.0.7
>
> I have the following function which works fine with the original
> developed intranet system(works on 1.0a5). It is used to manage the
> relationship between the Project, User & Role. The inter-reference
> table is ProjectUsers.
>
> The table structure are as following:
>
> Project:
> ProjectId int PK
> ProjectName varchar
> ....
>
> Users:
> UserId int PK
> Firstname varchar
> ...
>
> Role:
> RoleId int PK
> Role
> ....
>
> ProjectUsers:
> ProjectId int PK, FK
> UserId int PK, FK
> RoleId int PK, FK
>
>
> With the following block of code, I was trying to delete any existing
> records in the ProjectUsers table for a user first before I could add
> the new records in. But it seemed there was no action triggered.
> I couldn't see any delete sql statement generated from the log file,
> and the later insert statement failed as it was trying to add
> duplicate PK in the table.
>
>
> ===============================================================
> // projectusersArray has the Projectusers objects to be removed....
>
>
> Iterator iter = (new ArrayList(projectusersArray)).iterator();
> while (iter.hasNext())
> {
> Projectusers obj = (Projectusers)iter.next();
> iter.remove();
>
> log.debug("=========> obj.getToUsers().getFirstname()=" +
> obj.getToUsers().getFirstname());
> log.debug("=========> obj.getToUsers().getLastname()=" +
> obj.getToUsers().getLastname());
> log.debug("=========> obj.getToUsers().getLogin()=" +
> obj.getToUsers().getLogin());
>
> users.removeFromProjectusersArray( obj );
> // delet it !!
> ctxt.deleteObject(obj);
> }
> ===============================================================
>
>
> I'm taking the exact data model and the functions from the existing
> working system to try to implement a new one, but it did not work as
> expected.
>
> Appreciate any help!
>
>
> Thanks,
> Bill
This archive was generated by hypermail 2.0.0 : Thu Apr 01 2004 - 16:03:45 EST