272747 - cascade type enum array with incorrect value did not work
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/resource/java/CascadeType.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/resource/java/CascadeType.java
index 5983d38..aefef4f 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/resource/java/CascadeType.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/resource/java/CascadeType.java
@@ -9,6 +9,8 @@
  ******************************************************************************/
 package org.eclipse.jpt.core.resource.java;
 
+import org.eclipse.jpt.utility.internal.CollectionTools;
+
 /**
  * Corresponds to the JPA enum
  * javax.persistence.CascadeType
@@ -48,11 +50,12 @@
 		if (javaAnnotationValues == null) {
 			return EMPTY_CASCADE_TYPE_ARRAY;
 		}
-		int len = javaAnnotationValues.length;
-		if (len == 0) {
+		if (javaAnnotationValues.length == 0) {
 			return EMPTY_CASCADE_TYPE_ARRAY;
 		}
-
+		//nulls will exist if there is a typo in one of the enums
+		javaAnnotationValues = CollectionTools.removeAllOccurrences(javaAnnotationValues, null);
+		int len = javaAnnotationValues.length;
 		CascadeType[] cascadeTypes = new CascadeType[len];
 		for (int i = 0; i < len; i++) {
 			cascadeTypes[i] = fromJavaAnnotationValue(javaAnnotationValues[i]);