Apply patch for 407026.
diff --git a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/metadataprocessors/internal/MetaDataEnabledFeatureRegistry.java b/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/metadataprocessors/internal/MetaDataEnabledFeatureRegistry.java
index 2f34223..4632f5d 100644
--- a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/metadataprocessors/internal/MetaDataEnabledFeatureRegistry.java
+++ b/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/metadataprocessors/internal/MetaDataEnabledFeatureRegistry.java
@@ -13,6 +13,7 @@
 package org.eclipse.jst.jsf.metadataprocessors.internal;
 
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
@@ -91,7 +92,10 @@
 			}
 			else {
 				List list = featuresMap.get(typeId);
-				list.add(aFeature);
+				if (list != null)
+				{
+					list.add(aFeature);
+				}
 			}
 		}
 	}
@@ -123,7 +127,7 @@
 			featuresMap.put(typeId,new ArrayList());
 		
 		//copy current featuresMapped to typeId into return list
-		List<IMetaDataEnabledFeatureExtension> srcList = featuresMap.get(typeId);
+		List<IMetaDataEnabledFeatureExtension> srcList = getExtensionsForId(typeId);
 		List<IMetaDataEnabledFeatureExtension> ret = new ArrayList<IMetaDataEnabledFeatureExtension>(srcList.size());
 		copy(ret, srcList);	
 		
@@ -158,12 +162,20 @@
 		for (Iterator it=typeCacheMap.keySet().iterator();it.hasNext();){
 			String featureTypeId = (String)it.next();
 			Class featureTypeClass = typeCacheMap.get(featureTypeId);
-			if (featureTypeClass.isAssignableFrom(typeClass))	{	
-				ret.addAll(featuresMap.get(featureTypeId));
+			if (featureTypeClass != null && featureTypeClass.isAssignableFrom(typeClass))	{	
+				ret.addAll(getExtensionsForId(featureTypeId));
 			}
 		}
 		return ret;
 	}
 	
-
+	private List<IMetaDataEnabledFeatureExtension> getExtensionsForId(String featureTypeId)
+	{
+		List<IMetaDataEnabledFeatureExtension> list = featuresMap.get(featureTypeId);
+		if (list == null)
+		{
+			return Collections.emptyList();
+		}
+		return Collections.unmodifiableList(list);
+	}
 }