cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Marcin Skladaniec <mar...@ish.com.au>
Subject merging relationships
Date Thu, 17 Jan 2008 06:28:26 GMT
Hello

I have encountered an exception when trying to merge relationships  
using this code :

Artist source;
Artist destination;
while (source.getPaintings().size() > 0) {
	Object value = source. getPaintings().get(0);

	source.removeFromPaintings(value);
	destination.addToPaintings(value);
}

This code works for one-to-many relationships, no surprise. For the  
many-to-many relationships with intermediate table with compound pk  
the result is, that upon commit an error message comes up:

The statement was aborted because it would have caused a duplicate key  
value in a unique or primary key constraint or unique index identified  
by 'SQL071114101016080' defined on  
'ARTIST_PAINTING'.java.sql.SQLException: The statement was aborted  
because it would have caused a duplicate key value in a unique or  
primary key constraint or unique index identified by  
'SQL071114101016080' defined on 'ARTIST_PAINTING'

It is a perfectly valid error message, and we have avoided it already,  
but shouldn't cayenne resolve this internally and prevent creating  
double relationship ?

With regards
Marcin

Mime
View raw message