You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by al...@apache.org on 2011/06/09 22:07:37 UTC
svn commit: r1134062 -
/openjpa/branches/1.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/strats/StoreCollectionFieldStrategy.java
Author: allee8285
Date: Thu Jun 9 20:07:36 2011
New Revision: 1134062
URL: http://svn.apache.org/viewvc?rev=1134062&view=rev
Log:
OPENJPA-2015 Add to relationship collection only if type matches.
Modified:
openjpa/branches/1.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/strats/StoreCollectionFieldStrategy.java
Modified: openjpa/branches/1.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/strats/StoreCollectionFieldStrategy.java
URL: http://svn.apache.org/viewvc/openjpa/branches/1.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/strats/StoreCollectionFieldStrategy.java?rev=1134062&r1=1134061&r2=1134062&view=diff
==============================================================================
--- openjpa/branches/1.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/strats/StoreCollectionFieldStrategy.java (original)
+++ openjpa/branches/1.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/strats/StoreCollectionFieldStrategy.java Thu Jun 9 20:07:36 2011
@@ -123,7 +123,11 @@ public abstract class StoreCollectionFie
* By default, assumes the structure is a collection.
*/
protected void add(JDBCStore store, Object coll, Object obj) {
- ((Collection) coll).add(obj);
+ Class<?> elemClazz = field.getElement().getDeclaredType();
+ if( elemClazz == null || obj == null ||
+ elemClazz.isAssignableFrom(obj.getClass())) {
+ ((Collection) coll).add(obj);
+ }
}
/**