Bug 581077 Jakarta EE 10 support
diff --git a/plugins/org.eclipse.jst.ejb.ui/ejb_ui/org/eclipse/jst/ejb/ui/project/facet/EjbProjectFirstPage.java b/plugins/org.eclipse.jst.ejb.ui/ejb_ui/org/eclipse/jst/ejb/ui/project/facet/EjbProjectFirstPage.java
index dde509e..04c3afe 100644
--- a/plugins/org.eclipse.jst.ejb.ui/ejb_ui/org/eclipse/jst/ejb/ui/project/facet/EjbProjectFirstPage.java
+++ b/plugins/org.eclipse.jst.ejb.ui/ejb_ui/org/eclipse/jst/ejb/ui/project/facet/EjbProjectFirstPage.java
@@ -53,8 +53,11 @@
 	    }
 	    else {
 		    facets.add(primaryFacetVersion);
-		    
-		    if(primaryFacetVersion == IJ2EEFacetConstants.EJB_32)
+            if(primaryFacetVersion == IJ2EEFacetConstants.EJB_40)
+            {
+                facets.add(JavaFacet.VERSION_11);
+            }
+            else if(primaryFacetVersion == IJ2EEFacetConstants.EJB_32)
 		    {
 		        facets.add(JavaFacet.VERSION_1_7);
 		    }
diff --git a/plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/util/internal/JavaEEQuickPeek.java b/plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/util/internal/JavaEEQuickPeek.java
index a7b57bd..df3688c 100644
--- a/plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/util/internal/JavaEEQuickPeek.java
+++ b/plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/util/internal/JavaEEQuickPeek.java
@@ -189,7 +189,11 @@
 						version = J2EEVersionConstants.JEE_7_0_ID;
 					} else if (schemaName.indexOf(J2EEConstants.APP_CLIENT_SCHEMA_8) != -1) {
 						version = J2EEVersionConstants.JEE_8_0_ID;
-					}
+					}else if (schemaName.indexOf(J2EEConstants.APP_CLIENT_SCHEMA_8) != -1) {
+                        version = J2EEVersionConstants.JEE_8_0_ID;
+                    }else if (schemaName.indexOf(J2EEConstants.APP_CLIENT_SCHEMA_10) != -1) {
+                        version = J2EEVersionConstants.JEE_10_0_ID;
+                    }
 				}
 				break;
 			case APPLICATION_TYPE:
@@ -212,7 +216,9 @@
 						version = J2EEVersionConstants.JEE_7_0_ID;
 					} else if (schemaName.indexOf(J2EEConstants.APPLICATION_SCHEMA_8) != -1) {
 						version = J2EEVersionConstants.JEE_8_0_ID;
-					}
+					} else if (schemaName.indexOf(J2EEConstants.APPLICATION_SCHEMA_10) != -1) {
+                        version = J2EEVersionConstants.JEE_10_0_ID;
+                    }
 				}
 				break;
 			case EJB_TYPE:
@@ -231,7 +237,9 @@
 						version = J2EEVersionConstants.EJB_3_1_ID;
 					} else if (schemaName.indexOf(J2EEConstants.EJBJAR_SCHEMA_3_2) != -1) {
 						version = J2EEVersionConstants.EJB_3_2_ID;
-					}
+					} else if (schemaName.indexOf(J2EEConstants.EJBJAR_SCHEMA_4_0) != -1) {
+                        version = J2EEVersionConstants.EJB_4_0_ID;
+                    }
 				}
 				break;
 			case CONNECTOR_TYPE:
@@ -246,7 +254,9 @@
 						version = J2EEVersionConstants.JCA_1_6_ID;
 					} else if (schemaName.indexOf(J2EEConstants.CONNECTOR_SCHEMA_1_7) != -1) {
 						version = J2EEVersionConstants.JCA_1_7_ID;
-					}
+					}else if (schemaName.indexOf(J2EEConstants.CONNECTOR_SCHEMA_2_1) != -1) {
+                        version = J2EEVersionConstants.JCA_2_1_ID;
+                    }
 				}
 				break;
 			case WEB_TYPE:
@@ -297,7 +307,14 @@
 					} else if (J2EEVersionConstants.VERSION_4_0_TEXT.equals(versionAttribute)) {
 						version = J2EEVersionConstants.WEB_4_0_ID;
 					}
-				}
+				}else if (J2EEConstants.JAKARTAEE10_NS_URL.equals(namespace)) {
+                    String versionAttribute = handler.getRootAttributes().getValue("version"); //$NON-NLS-1$
+                    if (J2EEVersionConstants.VERSION_5_0_TEXT.equals(versionAttribute)) {
+                        version = J2EEVersionConstants.WEB_5_0_ID;
+                    } else if (J2EEVersionConstants.VERSION_6_0_TEXT.equals(versionAttribute)) {
+                        version = J2EEVersionConstants.WEB_6_0_ID;
+                    }
+                }
 				if (version == UNSET && handler.getRootAttributes() != null && handler.getRootAttributes().getValue("version") != null) { //$NON-NLS-1$
 					try {
 						float f = Float.parseFloat(handler.getRootAttributes().getValue("version")); //$NON-NLS-1$
@@ -322,12 +339,20 @@
 						version = J2EEVersionConstants.WEBSERVICES_1_3_ID;
 					}else if (schemaName.equals(J2EEConstants.WEBSERVICE_SCHEMA_1_4)) {
 						version = J2EEVersionConstants.WEBSERVICES_1_4_ID;
-					}
+					}else if (schemaName.equals(J2EEConstants.WEBSERVICE_SCHEMA_2_0)) {
+                        version = J2EEVersionConstants.WEBSERVICES_2_0_ID;
+                    }
 				}
 				break;
 			case WEBFRAGMENT_TYPE:
 				if (schemaName != null) {
-					if (schemaName.indexOf(J2EEConstants.WEBFRAGMENT_SCHEMA_4_0) != -1) {
+				    if (schemaName.indexOf(J2EEConstants.WEBFRAGMENT_SCHEMA_6_0) != -1) {
+                        version = J2EEVersionConstants.WEBFRAGMENT_6_0_ID;
+                    }
+                    else if (schemaName.indexOf(J2EEConstants.WEBFRAGMENT_SCHEMA_5_0) != -1) {
+                        version = J2EEVersionConstants.WEBFRAGMENT_5_0_ID;
+                    }
+                    else if (schemaName.indexOf(J2EEConstants.WEBFRAGMENT_SCHEMA_4_0) != -1) {
 						version = J2EEVersionConstants.WEBFRAGMENT_4_0_ID;
 					}
 					else if (schemaName.indexOf(J2EEConstants.WEBFRAGMENT_SCHEMA_3_1) != -1) {
@@ -336,6 +361,7 @@
 					else if (schemaName.indexOf(J2EEConstants.WEBFRAGMENT_SCHEMA_3_0) != -1) {
 						version = J2EEVersionConstants.WEBFRAGMENT_3_0_ID;
 					}
+					
 				}
 				break;
 			default:
@@ -390,6 +416,9 @@
 				case J2EEVersionConstants.EJB_3_2_ID:
 					javaEEVersion = J2EEConstants.JEE_7_0_ID;
 					break;
+				case J2EEVersionConstants.EJB_4_0_ID:
+                    javaEEVersion = J2EEConstants.JEE_10_0_ID;
+                    break;					
 				}
 				break;
 			case CONNECTOR_TYPE:
@@ -406,6 +435,9 @@
 				case J2EEVersionConstants.JCA_1_7_ID:
 					javaEEVersion = J2EEConstants.JEE_7_0_ID;
 					break;
+				case J2EEVersionConstants.JCA_2_1_ID:
+                    javaEEVersion = J2EEConstants.JEE_10_0_ID;
+                    break;
 				}
 				break;
 			case WEB_TYPE:
@@ -456,6 +488,9 @@
 			case J2EEVersionConstants.WEBSERVICES_1_4_ID:
 				javaEEVersion = J2EEVersionConstants.JEE_7_0_ID;
 				break;
+		    case J2EEVersionConstants.WEBSERVICES_2_0_ID:
+                javaEEVersion = J2EEVersionConstants.JEE_10_0_ID;
+                break;				
 			}
 			break;
 			
@@ -470,6 +505,12 @@
 			case J2EEVersionConstants.WEBFRAGMENT_4_0_ID:
 				javaEEVersion = J2EEVersionConstants.JEE_8_0_ID;
 				break;
+			case J2EEVersionConstants.WEBFRAGMENT_5_0_ID:
+                javaEEVersion = J2EEVersionConstants.JEE_9_0_ID;
+                break;
+            case J2EEVersionConstants.WEBFRAGMENT_6_0_ID:
+                javaEEVersion = J2EEVersionConstants.JEE_10_0_ID;
+                break;
 			}
 			break;
 		}
diff --git a/plugins/org.eclipse.jst.j2ee.core/commonArchive/org/eclipse/jst/j2ee/commonarchivecore/internal/util/J2EEFileUtil.java b/plugins/org.eclipse.jst.j2ee.core/commonArchive/org/eclipse/jst/j2ee/commonarchivecore/internal/util/J2EEFileUtil.java
index a313a88..208ae3d 100644
--- a/plugins/org.eclipse.jst.j2ee.core/commonArchive/org/eclipse/jst/j2ee/commonarchivecore/internal/util/J2EEFileUtil.java
+++ b/plugins/org.eclipse.jst.j2ee.core/commonArchive/org/eclipse/jst/j2ee/commonarchivecore/internal/util/J2EEFileUtil.java
@@ -320,7 +320,9 @@
               version = J2EEVersionConstants.EJB_3_1_ID;
            } else if (versionAttr.equals(J2EEVersionConstants.VERSION_3_2_TEXT)) { 
               version = J2EEVersionConstants.EJB_3_2_ID;
-           }
+           } else if (versionAttr.equals(J2EEVersionConstants.VERSION_4_0_TEXT)) { 
+               version = J2EEVersionConstants.EJB_4_0_ID;
+            }
         } else if (isApplicationClientFile(fileURI)) {
            if (null == versionAttr) {
               version = J2EEVersionConstants.J2EE_1_4_ID;
@@ -391,7 +393,9 @@
               version = J2EEVersionConstants.J2EE_1_4_ID;
            }
         } else if (isEJBJarFile(fileURI)) {
-           if ((schemaName.indexOf(J2EEConstants.EJBJAR_SCHEMA_3_2_NS)) != -1) {
+           if ((schemaName.indexOf(J2EEConstants.EJBJAR_SCHEMA_4_0_NS)) != -1) {
+                version = J2EEVersionConstants.EJB_4_0_ID;   
+           } else if ((schemaName.indexOf(J2EEConstants.EJBJAR_SCHEMA_3_2_NS)) != -1) {
               version = J2EEVersionConstants.EJB_3_2_ID;   
            } else if ((schemaName.indexOf(J2EEConstants.EJBJAR_SCHEMA_3_1_NS)) != -1) {
               version = J2EEVersionConstants.EJB_3_1_ID;   
diff --git a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/application/internal/metadata/ApplicationPackage.java b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/application/internal/metadata/ApplicationPackage.java
index a68ca55..a4f0b0d 100644
--- a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/application/internal/metadata/ApplicationPackage.java
+++ b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/application/internal/metadata/ApplicationPackage.java
@@ -292,6 +292,7 @@
 	String eNS_URI2 = J2EEConstants.APPLICATION_SCHEMA_LOC_6;
 	String eNS_URI3 = J2EEConstants.APPLICATION_SCHEMA_LOC_7;
 	String eNS_URI4 = J2EEConstants.APPLICATION_SCHEMA_LOC_8;
+	String eNS_URI5 = J2EEConstants.APPLICATION_SCHEMA_LOC_10;
 	/**
 	 * The package namespace name.
 	 * <!-- begin-user-doc -->
diff --git a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/applicationclient/internal/impl/ApplicationclientPackageImpl.java b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/applicationclient/internal/impl/ApplicationclientPackageImpl.java
index 42c38e3..d937281 100644
--- a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/applicationclient/internal/impl/ApplicationclientPackageImpl.java
+++ b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/applicationclient/internal/impl/ApplicationclientPackageImpl.java
@@ -110,6 +110,8 @@
 		EPackage.Registry.INSTANCE.put(ApplicationclientPackage.eNS_URI, theApplicationclientPackage);
 		EPackage.Registry.INSTANCE.put(ApplicationclientPackage.eNS_URI2, theApplicationclientPackage);
 		EPackage.Registry.INSTANCE.put(ApplicationclientPackage.eNS_URI3, theApplicationclientPackage);
+		EPackage.Registry.INSTANCE.put(ApplicationclientPackage.eNS_URI4, theApplicationclientPackage);
+		EPackage.Registry.INSTANCE.put(ApplicationclientPackage.eNS_URI5, theApplicationclientPackage);
 
 		J2EEInit.initEMFModels();
 		return theApplicationclientPackage;
diff --git a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/applicationclient/internal/metadata/ApplicationclientPackage.java b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/applicationclient/internal/metadata/ApplicationclientPackage.java
index 30c3e0b..5e42227 100644
--- a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/applicationclient/internal/metadata/ApplicationclientPackage.java
+++ b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/applicationclient/internal/metadata/ApplicationclientPackage.java
@@ -293,6 +293,7 @@
 	String eNS_URI2 = J2EEConstants.APP_CLIENT_SCHEMA_LOC_6;
 	String eNS_URI3 = J2EEConstants.APP_CLIENT_SCHEMA_LOC_7;
 	String eNS_URI4 = J2EEConstants.APP_CLIENT_SCHEMA_LOC_8;
+	String eNS_URI5 = J2EEConstants.APP_CLIENT_SCHEMA_LOC_10;
 	/**
 	 * The package namespace name.
 	 * <!-- begin-user-doc -->
diff --git a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/core/internal/impl/JavaeePackageImpl.java b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/core/internal/impl/JavaeePackageImpl.java
index 5cd5ff2..30f7706 100644
--- a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/core/internal/impl/JavaeePackageImpl.java
+++ b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/core/internal/impl/JavaeePackageImpl.java
@@ -698,7 +698,8 @@
 		// Update the registry and return the package
 		EPackage.Registry.INSTANCE.put(JavaeePackage.eNS_URI, theJavaeePackage);
 		EPackage.Registry.INSTANCE.put(JavaeePackage.eNS_URI2, theJavaeePackage);
-
+		EPackage.Registry.INSTANCE.put(JavaeePackage.eNS_URI3, theJavaeePackage);
+		
 		J2EEInit.initEMFModels();
 		return theJavaeePackage;
 	}
diff --git a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/core/internal/metadata/JavaeePackage.java b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/core/internal/metadata/JavaeePackage.java
index 9a4719e..4c68db6 100644
--- a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/core/internal/metadata/JavaeePackage.java
+++ b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/core/internal/metadata/JavaeePackage.java
@@ -243,6 +243,7 @@
 	 */
 	String eNS_URI = J2EEConstants.JAVAEE7_NS_URL;
 	String eNS_URI2 = J2EEConstants.JAVAEE_NS_URL;
+	String eNS_URI3 = J2EEConstants.JAKARTAEE9_NS_URL;
 
 	/**
 	 * The package namespace name.
diff --git a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/core/internal/util/JavaEEExtendedMetaData.java b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/core/internal/util/JavaEEExtendedMetaData.java
index c6f2dc8..c344ab6 100644
--- a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/core/internal/util/JavaEEExtendedMetaData.java
+++ b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/core/internal/util/JavaEEExtendedMetaData.java
@@ -107,6 +107,10 @@
 						uri = J2EEConstants.APPLICATION_SCHEMA_LOC_7;
 						javaeeUri = J2EEConstants.JAVAEE7_NS_URL;
 					}
+					else if(J2EEVersionConstants.VERSION_10_TEXT.equals(version)) {
+                        uri = J2EEConstants.APPLICATION_SCHEMA_LOC_10;
+                        javaeeUri = J2EEConstants.JAKARTAEE10_NS_URL;
+                    }
 					else {
 						uri = J2EEConstants.APPLICATION_SCHEMA_LOC_8;
 						javaeeUri = J2EEConstants.JAVAEE7_NS_URL;
@@ -133,6 +137,10 @@
 						uri = J2EEConstants.APP_CLIENT_SCHEMA_LOC_7;
 						javaeeUri = J2EEConstants.JAVAEE7_NS_URL;
 					}
+					else if (J2EEVersionConstants.VERSION_10_TEXT.equals(version)) {
+                        uri = J2EEConstants.APP_CLIENT_SCHEMA_LOC_10;
+                        javaeeUri = J2EEConstants.JAKARTAEE10_NS_URL;
+                    }
 					else {
 						uri = J2EEConstants.APP_CLIENT_SCHEMA_LOC_8;
 						javaeeUri = J2EEConstants.JAVAEE7_NS_URL;
@@ -155,8 +163,11 @@
 						uri = J2EEConstants.EJB_JAR_SCHEMA_LOC_3_1;
 						javaeeUri = J2EEConstants.JAVAEE_NS_URL;
 					}
-					else
-					{
+					else if(J2EEVersionConstants.VERSION_4_0_TEXT.equals(version)) {
+                        uri = J2EEConstants.EJB_JAR_SCHEMA_LOC_4_0;
+                        javaeeUri = J2EEConstants.JAKARTAEE10_NS_URL;
+                    }
+					else {
 						uri = J2EEConstants.EJB_JAR_SCHEMA_LOC_3_2;
 						javaeeUri = J2EEConstants.JAVAEE7_NS_URL;
 					}
@@ -174,6 +185,10 @@
 						uri = J2EEConstants.CONNECTOR_SCHEMA_LOC_1_6;
 						javaeeUri = J2EEConstants.JAVAEE_NS_URL;
 					}
+					else if(J2EEVersionConstants.VERSION_2_1_TEXT.equals(version)) {
+                        uri = J2EEConstants.CONNECTOR_SCHEMA_LOC_2_1;
+                        javaeeUri = J2EEConstants.JAKARTAEE10_NS_URL;
+                    }
 					else
 					{
 						uri = J2EEConstants.CONNECTOR_SCHEMA_LOC_1_7;
@@ -202,6 +217,14 @@
 						uri = J2EEConstants.WEB_APP_SCHEMA_LOC_3_1;
 						javaeeUri = J2EEConstants.JAVAEE7_NS_URL;
 					}
+					else if(J2EEVersionConstants.VERSION_5_0_TEXT.equals(version)) {
+                        uri = J2EEConstants.WEB_APP_SCHEMA_LOC_5_0;
+                        javaeeUri = J2EEConstants.JAKARTAEE9_NS_URL;
+                    }
+					else if(J2EEVersionConstants.VERSION_6_0_TEXT.equals(version)) {
+                        uri = J2EEConstants.WEB_APP_SCHEMA_LOC_6_0;
+                        javaeeUri = J2EEConstants.JAKARTAEE10_NS_URL;
+                    }
 					else {
 						uri = J2EEConstants.WEB_APP_SCHEMA_LOC_4_0;
 						javaeeUri = J2EEConstants.JAVAEE7_NS_URL;
@@ -225,6 +248,14 @@
 						uri = J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_3_1;
 						javaeeUri = J2EEConstants.JAVAEE7_NS_URL;
 					}
+					else if(J2EEVersionConstants.VERSION_5_0_TEXT.equals(version)) {
+                        uri = J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_5_0;
+                        javaeeUri = J2EEConstants.JAKARTAEE9_NS_URL;
+                    }
+					else if(J2EEVersionConstants.VERSION_6_0_TEXT.equals(version)) {
+                        uri = J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_6_0;
+                        javaeeUri = J2EEConstants.JAKARTAEE10_NS_URL;
+                    }
 					else
 					{
 						uri = J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_4_0;
diff --git a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/ejb/internal/impl/EjbPackageImpl.java b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/ejb/internal/impl/EjbPackageImpl.java
index 3f2871b..2fdf453 100644
--- a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/ejb/internal/impl/EjbPackageImpl.java
+++ b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/ejb/internal/impl/EjbPackageImpl.java
@@ -617,6 +617,7 @@
 		EPackage.Registry.INSTANCE.put(EjbPackage.eNS_URI, theEjbPackage);
 		EPackage.Registry.INSTANCE.put(EjbPackage.eNS_URI2, theEjbPackage);
 		EPackage.Registry.INSTANCE.put(EjbPackage.eNS_URI3, theEjbPackage);
+		EPackage.Registry.INSTANCE.put(EjbPackage.eNS_URI4, theEjbPackage);
 
 		J2EEInit.initEMFModels();
 		return theEjbPackage;
diff --git a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/ejb/internal/metadata/EjbPackage.java b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/ejb/internal/metadata/EjbPackage.java
index f6458ef..1a49830 100644
--- a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/ejb/internal/metadata/EjbPackage.java
+++ b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/ejb/internal/metadata/EjbPackage.java
@@ -292,6 +292,7 @@
 	String eNS_URI = J2EEConstants.EJB_JAR_SCHEMA_LOC_3_0;
 	String eNS_URI2 = J2EEConstants.EJB_JAR_SCHEMA_LOC_3_1;
 	String eNS_URI3 = J2EEConstants.EJB_JAR_SCHEMA_LOC_3_2;
+	String eNS_URI4 = J2EEConstants.EJB_JAR_SCHEMA_LOC_4_0;
 
 	/**
 	 * The package namespace name.
diff --git a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/ejb/internal/util/EjbXMLHelperImpl.java b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/ejb/internal/util/EjbXMLHelperImpl.java
index af10232..7424197 100644
--- a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/ejb/internal/util/EjbXMLHelperImpl.java
+++ b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/ejb/internal/util/EjbXMLHelperImpl.java
@@ -54,6 +54,9 @@
 			aFeature =  super.getFeature(class1, EjbPackage.eNS_URI2, name, isElement);
 		if (aFeature == null && !EjbPackage.eNS_URI3.equals(namespaceURI))
 			aFeature =  super.getFeature(class1, EjbPackage.eNS_URI3, name, isElement);
+		if (aFeature == null && !EjbPackage.eNS_URI4.equals(namespaceURI))
+            aFeature =  super.getFeature(class1, EjbPackage.eNS_URI4, name, isElement);
+
 		return aFeature;
 	}
 
diff --git a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/jca/internal/impl/JcaPackageImpl.java b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/jca/internal/impl/JcaPackageImpl.java
index 4363251..aa10468 100644
--- a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/jca/internal/impl/JcaPackageImpl.java
+++ b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/jca/internal/impl/JcaPackageImpl.java
@@ -252,6 +252,7 @@
 		// Update the registry and return the package
 		EPackage.Registry.INSTANCE.put(JcaPackage.eNS_URI, theJcaPackage);
 		EPackage.Registry.INSTANCE.put(JcaPackage.eNS_URI2, theJcaPackage);
+		EPackage.Registry.INSTANCE.put(JcaPackage.eNS_URI3, theJcaPackage);
 
 		J2EEInit.initEMFModels();
 		return theJcaPackage;
diff --git a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/jca/internal/metadata/JcaPackage.java b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/jca/internal/metadata/JcaPackage.java
index 8a49589..88f49bc 100644
--- a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/jca/internal/metadata/JcaPackage.java
+++ b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/jca/internal/metadata/JcaPackage.java
@@ -292,6 +292,7 @@
 	 */
 	String eNS_URI = J2EEConstants.CONNECTOR_SCHEMA_LOC_1_6;
 	String eNS_URI2 = J2EEConstants.CONNECTOR_SCHEMA_LOC_1_7;
+	String eNS_URI3 = J2EEConstants.CONNECTOR_SCHEMA_LOC_2_1;
 
 	/**
 	 * The package namespace name.
diff --git a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/web/internal/impl/WebPackageImpl.java b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/web/internal/impl/WebPackageImpl.java
index 5f11651..c49ae08 100644
--- a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/web/internal/impl/WebPackageImpl.java
+++ b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/web/internal/impl/WebPackageImpl.java
@@ -494,6 +494,9 @@
 		EPackage.Registry.INSTANCE.put(WebPackage.eNS_URI, theWebPackage);
 		EPackage.Registry.INSTANCE.put(WebPackage.eNS_URI2, theWebPackage);
 		EPackage.Registry.INSTANCE.put(WebPackage.eNS_URI3, theWebPackage);
+		EPackage.Registry.INSTANCE.put(WebPackage.eNS_URI4, theWebPackage);
+		EPackage.Registry.INSTANCE.put(WebPackage.eNS_URI5, theWebPackage);
+		EPackage.Registry.INSTANCE.put(WebPackage.eNS_URI6, theWebPackage);
 
 		J2EEInit.initEMFModels();
 		return theWebPackage;
diff --git a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/web/internal/metadata/WebPackage.java b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/web/internal/metadata/WebPackage.java
index d2810d3..150b39a 100644
--- a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/web/internal/metadata/WebPackage.java
+++ b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/web/internal/metadata/WebPackage.java
@@ -323,6 +323,7 @@
 	String eNS_URI3 = J2EEConstants.WEB_APP_SCHEMA_LOC_3_1;
 	String eNS_URI4 = J2EEConstants.WEB_APP_SCHEMA_LOC_4_0;
 	String eNS_URI5 = J2EEConstants.WEB_APP_SCHEMA_LOC_5_0;
+	String eNS_URI6 = J2EEConstants.WEB_APP_SCHEMA_LOC_6_0;
 
 	/**
 	 * The package namespace name.
diff --git a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/webfragment/internal/impl/WebfragmentPackageImpl.java b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/webfragment/internal/impl/WebfragmentPackageImpl.java
index 4d25c77..fcdfda7 100644
--- a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/webfragment/internal/impl/WebfragmentPackageImpl.java
+++ b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/webfragment/internal/impl/WebfragmentPackageImpl.java
@@ -99,6 +99,10 @@
 		// Update the registry and return the package
 		EPackage.Registry.INSTANCE.put(WebfragmentPackage.eNS_URI, theWebfragmentPackage);
 		EPackage.Registry.INSTANCE.put(WebfragmentPackage.eNS_URI2, theWebfragmentPackage);
+		EPackage.Registry.INSTANCE.put(WebfragmentPackage.eNS_URI3, theWebfragmentPackage);
+		EPackage.Registry.INSTANCE.put(WebfragmentPackage.eNS_URI4, theWebfragmentPackage);
+		EPackage.Registry.INSTANCE.put(WebfragmentPackage.eNS_URI5, theWebfragmentPackage);
+		
 
 		J2EEInit.initEMFModels();
 		return theWebfragmentPackage;
diff --git a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/webfragment/internal/metadata/WebfragmentPackage.java b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/webfragment/internal/metadata/WebfragmentPackage.java
index 1b6a139..bc85b47 100644
--- a/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/webfragment/internal/metadata/WebfragmentPackage.java
+++ b/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/webfragment/internal/metadata/WebfragmentPackage.java
@@ -365,6 +365,8 @@
 	String eNS_URI = J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_3_0;
 	String eNS_URI2 = J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_3_1;
 	String eNS_URI3 = J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_4_0;
+	String eNS_URI4 = J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_5_0;
+	String eNS_URI5 = J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_6_0;
 	/**
 	 * The package namespace name.
 	 * <!-- begin-user-doc -->
diff --git a/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/ejb/internal/impl/EJBResourceImpl.java b/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/ejb/internal/impl/EJBResourceImpl.java
index 0b5f570..de0a8e8 100644
--- a/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/ejb/internal/impl/EJBResourceImpl.java
+++ b/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/ejb/internal/impl/EJBResourceImpl.java
@@ -159,6 +159,8 @@
 				return J2EEVersionConstants.JEE_6_0_ID;
 			case J2EEVersionConstants.EJB_3_2_ID :
 				return J2EEVersionConstants.JEE_7_0_ID;
+			case J2EEVersionConstants.EJB_4_0_ID :
+                return J2EEVersionConstants.JEE_10_0_ID;				
 			default :
 			return J2EEVersionConstants.J2EE_1_4_ID;
 		}
@@ -182,6 +184,10 @@
 	public void setModuleVersionID(int id) {
 		super.setVersionID(id);
 		switch (id) {
+		        case (EJB_4_0_ID) :
+		            super.setDoctypeValues(null, null);
+                    primSetVersionID(EJB_4_0_ID);
+                    break;
 				case (EJB_3_2_ID) :
 					super.setDoctypeValues(null, null);
 					primSetVersionID(EJB_3_2_ID);
@@ -216,6 +222,10 @@
 	@Override
 	public void setJ2EEVersionID(int id) {
 	switch (id) {
+	    case (JEE_10_0_ID) :
+            primSetDoctypeValues(null, null);
+            primSetVersionID(EJB_4_0_ID);
+            break;
 		case (JEE_8_0_ID) : 
 		case (JEE_7_0_ID) :
 					primSetDoctypeValues(null, null);
diff --git a/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/internal/J2EEConstants.java b/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/internal/J2EEConstants.java
index 7cf6ef5..4704e54 100644
--- a/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/internal/J2EEConstants.java
+++ b/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/internal/J2EEConstants.java
@@ -55,6 +55,7 @@
     String APP_CLIENT_SCHEMA_6         =   "http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application-client_6.xsd"; //$NON-NLS-1$
     String APP_CLIENT_SCHEMA_7         =   "http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/application-client_7.xsd"; //$NON-NLS-1$
     String APP_CLIENT_SCHEMA_8         =   "http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/application-client_8.xsd"; //$NON-NLS-1$
+    String APP_CLIENT_SCHEMA_10        =   "https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/application-client_10.xsd"; //$NON-NLS-1$
     
     //Application constants
     /** "Application_ID"                                                                                                    */
@@ -82,6 +83,7 @@
     String APPLICATION_SCHEMA_6         =  "http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_6.xsd"; //$NON-NLS-1$ 
     String APPLICATION_SCHEMA_7         =  "http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/application_7.xsd"; //$NON-NLS-1$
     String APPLICATION_SCHEMA_8         =  "http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/application_8.xsd"; //$NON-NLS-1$
+    String APPLICATION_SCHEMA_10        =  "https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/application_10.xsd"; //$NON-NLS-1$
     
     //EJB Jar Constants
     /** "ejb-jar_ID"                                                                                                                */
@@ -109,6 +111,10 @@
     String EJBJAR_SCHEMA_3_1_NS     =   "http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd"; //$NON-NLS-1$ 
     String EJBJAR_SCHEMA_3_2        =   "http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/ejb-jar_3_2.xsd"; //$NON-NLS-1$ 
     String EJBJAR_SCHEMA_3_2_NS     =   "http://xmlns.jcp.org/xml/ns/javaee/ejb-jar_3_2.xsd"; //$NON-NLS-1$ 
+    String EJBJAR_SCHEMA_4_0        =   "https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/ejb-jar_4_0.xsd"; //$NON-NLS-1$ 
+    String EJBJAR_SCHEMA_4_0_NS     =   "https://jakarta.ee/xml/ns/jakartaee/ejb-jar_4_0.xsd"; //$NON-NLS-1$ 
+    
+   
     
     // EAR constants
     
@@ -124,6 +130,8 @@
     String  WEBFRAGMENT_SCHEMA_3_0 		= 		"http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-fragment_3_0.xsd"; //$NON-NLS-1$
     String  WEBFRAGMENT_SCHEMA_3_1 		= 		"http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-fragment_3_1.xsd"; //$NON-NLS-1$
     String  WEBFRAGMENT_SCHEMA_4_0 		= 		"http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-fragment_4_0.xsd"; //$NON-NLS-1$
+    String  WEBFRAGMENT_SCHEMA_5_0      =       "https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-fragment_5_0.xsd"; //$NON-NLS-1$
+    String  WEBFRAGMENT_SCHEMA_6_0      =       "https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-fragment_6_0.xsd"; //$NON-NLS-1$
     
     //Web app Constants
     /** "WebApp_ID"                                                                                                                 */
@@ -148,8 +156,8 @@
     String WEBAPP_SCHEMA_3_0        =   "http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd";//$NON-NLS-1$
     String WEBAPP_SCHEMA_3_1        =   "http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd";//$NON-NLS-1$
     String WEBAPP_SCHEMA_4_0        =   "http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd";//$NON-NLS-1$
-    String WEBAPP_SCHEMA_5_0        =   "http://xmlns.jcp.org/xml/ns/javaee https://jakarta.ee/xml/ns/jakartaee/web-app_5_0.xsd";//$NON-NLS-1$
-    String WEBAPP_SCHEMA_6_0        =   "http://xmlns.jcp.org/xml/ns/javaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd";//$NON-NLS-1$
+    String WEBAPP_SCHEMA_5_0        =   "https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_5_0.xsd";//$NON-NLS-1$
+    String WEBAPP_SCHEMA_6_0        =   "https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd";//$NON-NLS-1$
     /** "WEB-INF/ejb-jar.xml" */
     String EJBJAR_IN_WAR_DD_URI                =   "WEB-INF/ejb-jar.xml"; //$NON-NLS-1$
     //J2C Resource Adapter Constants
@@ -169,6 +177,7 @@
     String CONNECTOR_SCHEMA_1_5         =   "http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd";//$NON-NLS-1$
     String CONNECTOR_SCHEMA_1_6         =   "http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/connector_1_6.xsd";//$NON-NLS-1$
     String CONNECTOR_SCHEMA_1_7         =   "http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/connector_1_7.xsd";//$NON-NLS-1$
+    String CONNECTOR_SCHEMA_2_1         =   "https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/connector_2_1.xsd";//$NON-NLS-1$
     //Web Services Constants
     /** Doc type for webservices deployment descriptors */
     String WEB_SERVICES_CLIENT_DOCTYPE      = "webservicesclient";  //$NON-NLS-1$
@@ -201,7 +210,10 @@
     String WEBSERVICE_SCHEMA_LOC_SUN_1_3 = "http://java.sun.com/xml/ns/javaee/javaee_web_services_1_3.xsd";//$NON-NLS-1$
     String WEBSERVICE_SCHEMA_1_4 = "http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/javaee_web_services_1_4.xsd";//$NON-NLS-1$
     String WEBSERVICE_SCHEMA_LOC_1_4 = "http://xmlns.jcp.org/xml/ns/javaee/javaee_web_services_1_4.xsd";//$NON-NLS-1$
-        
+    String WEBSERVICE_SCHEMA_2_0 = "https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/jakartaee_web_services_2_0.xsd";//$NON-NLS-1$
+    String WEBSERVICE_SCHEMA_LOC_2_0 = "https://jakarta.ee/xml/ns/jakartaee/jakartaee_web_services_2_0.xsd";//$NON-NLS-1$
+
+    
     //Miscellaneous constants
     /** "UTF-8"                                                                                                                             */
     String DEFAULT_XML_ENCODING             =       "UTF-8"; //$NON-NLS-1$
@@ -215,6 +227,7 @@
     String JAVAEE_NS_URL                    = "http://java.sun.com/xml/ns/javaee"; //$NON-NLS-1$ //EJB3
     String JAVAEE7_NS_URL                   = "http://xmlns.jcp.org/xml/ns/javaee"; //$NON-NLS-1$
     String JAKARTAEE9_NS_URL = "https://jakarta.ee/xml/ns/jakartaee"; //$NON-NLS-1$
+    String JAKARTAEE10_NS_URL = "https://jakarta.ee/xml/ns/jakartaee"; //$NON-NLS-1$
     String J2EE_1_4_XSD_SHORT_NAME          = "j2ee_1_4.xsd"; //$NON-NLS-1$
     String JAVAEE_5_XSD_SHORT_NAME          = "javaee_5.xsd"; //$NON-NLS-1$  //EJB3
     String XSI_NS_URL                       = "http://www.w3.org/2001/XMLSchema-instance"; //$NON-NLS-1$ 
@@ -223,18 +236,23 @@
     String APPLICATION_SCHEMA_LOC_6         = "http://java.sun.com/xml/ns/javaee/application_6.xsd"; //$NON-NLS-1$
     String APPLICATION_SCHEMA_LOC_7         = "http://xmlns.jcp.org/xml/ns/javaee/application_7.xsd"; //$NON-NLS-1$
     String APPLICATION_SCHEMA_LOC_8         = "http://xmlns.jcp.org/xml/ns/javaee/application_8.xsd"; //$NON-NLS-1$
+    String APPLICATION_SCHEMA_LOC_10        = "https://jakarta.ee/xml/ns/jakartaee/application_10.xsd"; //$NON-NLS-1$
     String APP_CLIENT_SCHEMA_LOC_1_4        = "http://java.sun.com/xml/ns/j2ee/application-client_1_4.xsd"; //$NON-NLS-1$
     String APP_CLIENT_SCHEMA_LOC_5          = "http://java.sun.com/xml/ns/javaee/application-client_5.xsd"; //$NON-NLS-1$
     String APP_CLIENT_SCHEMA_LOC_6          = "http://java.sun.com/xml/ns/javaee/application-client_6.xsd"; //$NON-NLS-1$
     String APP_CLIENT_SCHEMA_LOC_7          = "http://xmlns.jcp.org/xml/ns/javaee/application-client_7.xsd"; //$NON-NLS-1$
     String APP_CLIENT_SCHEMA_LOC_8          = "http://xmlns.jcp.org/xml/ns/javaee/application-client_8.xsd"; //$NON-NLS-1$
+    String APP_CLIENT_SCHEMA_LOC_10         = "https://jakarta.ee/xml/ns/jakartaee/application-client_10.xsd"; //$NON-NLS-1$
     String EJB_JAR_SCHEMA_LOC_2_1           = "http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd"; //$NON-NLS-1$
     String EJB_JAR_SCHEMA_LOC_3_0    		= "http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd"; //$NON-NLS-1$
     String EJB_JAR_SCHEMA_LOC_3_1    		= "http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd"; //$NON-NLS-1$
     String EJB_JAR_SCHEMA_LOC_3_2    		= "http://xmlns.jcp.org/xml/ns/javaee/ejb-jar_3_2.xsd"; //$NON-NLS-1$
+    String EJB_JAR_SCHEMA_LOC_4_0           = "https://jakarta.ee/xml/ns/jakartaee/ejb-jar_4_0.xsd"; //$NON-NLS-1$
     String CONNECTOR_SCHEMA_LOC_1_5         = "http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd"; //$NON-NLS-1$
     String CONNECTOR_SCHEMA_LOC_1_6         = "http://java.sun.com/xml/ns/javaee/connector_1_6.xsd"; //$NON-NLS-1$
     String CONNECTOR_SCHEMA_LOC_1_7         = "http://xmlns.jcp.org/xml/ns/javaee/connector_1_7.xsd"; //$NON-NLS-1$
+    String CONNECTOR_SCHEMA_LOC_2_1         = "https://jakarta.ee/xml/ns/jakartaee/connector_2_1.xsd"; //$NON-NLS-1$
+    
     String WEB_APP_SCHEMA_LOC_2_4           = "http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"; //$NON-NLS-1$
     String WEB_APP_SCHEMA_LOC_2_5           = "http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"; //$NON-NLS-1$
     String WEB_APP_SCHEMA_LOC_3_0           = "http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"; //$NON-NLS-1$
@@ -251,6 +269,7 @@
     String WEBFRAGMENT_SCHEMA_LOC_3_1       = "http://xmlns.jcp.org/xml/ns/javaee/web-fragment_3_1.xsd"; //$NON-NLS-1$ //Web Fragment3
     String WEBFRAGMENT_SCHEMA_LOC_4_0       = "http://xmlns.jcp.org/xml/ns/javaee/web-fragment_4_0.xsd"; //$NON-NLS-1$ //Web Fragment4
     String WEBFRAGMENT_SCHEMA_LOC_5_0       = "http://xmlns.jcp.org/xml/ns/javaee/web-fragment_5_0.xsd"; //$NON-NLS-1$
+    String WEBFRAGMENT_SCHEMA_LOC_6_0       = "https://jakarta.ee/xml/ns/jakartaee/web-fragment_6_0.xsd"; //$NON-NLS-1$
     
     public static final String EAR_MODEL_NAME = "EAR_VALIDATION"; //$NON-NLS-1$
 }
diff --git a/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/internal/J2EEVersionConstants.java b/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/internal/J2EEVersionConstants.java
index 6fe329b..1cac170 100644
--- a/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/internal/J2EEVersionConstants.java
+++ b/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/internal/J2EEVersionConstants.java
@@ -44,6 +44,7 @@
 	public int EJB_3_0_ID = 30;
 	public int EJB_3_1_ID = 31;
 	public int EJB_3_2_ID = 32;
+	public int EJB_4_0_ID = 40;
 	public int WEB_2_2_ID = 22;
 	public int WEB_2_3_ID = 23;
 	public int WEB_2_4_ID = 24;
@@ -56,6 +57,8 @@
 	public int WEBFRAGMENT_3_0_ID = 30;
 	public int WEBFRAGMENT_3_1_ID = 31;
 	public int WEBFRAGMENT_4_0_ID = 40;
+	public int WEBFRAGMENT_5_0_ID = 50;
+	public int WEBFRAGMENT_6_0_ID = 60;
 	public int TAGLIB_1_1_ID = 11;
 	public int TAGLIB_1_2_ID = 12;
 	public int TAGLIB_2_0_ID = 20;
@@ -76,11 +79,13 @@
 	public int JCA_1_5_ID = 15;
 	public int JCA_1_6_ID = 16;
 	public int JCA_1_7_ID = 17;
+	public int JCA_2_1_ID = 21;
 	public int WEBSERVICES_1_0_ID = 10;
 	public int WEBSERVICES_1_1_ID = 11;
 	public int WEBSERVICES_1_2_ID = 12;
 	public int WEBSERVICES_1_3_ID = 13;
 	public int WEBSERVICES_1_4_ID = 14;
+	public int WEBSERVICES_2_0_ID = 20;
 	public String J2EE_1_4_TEXT 		= "1.4"; //$NON-NLS-1$
 	
 
@@ -108,6 +113,7 @@
 	public int VERSION_6_0 = 60; 
 	public int VERSION_7_0 = 70;
 	public int VERSION_8_0 = 80;
+	public int VERSION_10_0 = 100;
 	
 	public String VERSION_1_0_TEXT		= "1.0"; //$NON-NLS-1$
 	public String VERSION_1_1_TEXT    	= "1.1"; //$NON-NLS-1$
@@ -132,10 +138,12 @@
 	public String VERSION_6_0_TEXT		= "6.0"; //$NON-NLS-1$
 	public String VERSION_7_0_TEXT		= "7.0"; //$NON-NLS-1$
 	public String VERSION_8_0_TEXT		= "8.0"; //$NON-NLS-1$
+	public String VERSION_10_0_TEXT     = "10.0"; //$NON-NLS-1$
 	public String VERSION_5_TEXT        = "5";   //$NON-NLS-1$
 	public String VERSION_6_TEXT        = "6";   //$NON-NLS-1$
 	public String VERSION_7_TEXT        = "7";   //$NON-NLS-1$
 	public String VERSION_8_TEXT        = "8";	//$NON-NLS-1$
 	public String VERSION_9_TEXT        = "9";	//$NON-NLS-1$
+	public String VERSION_10_TEXT        = "10"; //$NON-NLS-1$
 					
 }
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.j2ee.ejb/META-INF/MANIFEST.MF
index 2eb5b77..72f7967 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.jst.j2ee.ejb/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %Bundle-Name.0
 Bundle-SymbolicName: org.eclipse.jst.j2ee.ejb; singleton:=true
-Bundle-Version: 1.1.901.qualifier
+Bundle-Version: 1.1.902.qualifier
 Bundle-Activator: org.eclipse.jst.j2ee.ejb.internal.plugin.EjbPlugin
 Bundle-Vendor: %Bundle-Vendor.0
 Bundle-Localization: plugin
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/ejbcreation/org/eclipse/jst/j2ee/ejb/project/facet/EjbFacetInstallDelegate.java b/plugins/org.eclipse.jst.j2ee.ejb/ejbcreation/org/eclipse/jst/j2ee/ejb/project/facet/EjbFacetInstallDelegate.java
index 5a0bea9..d6f1ae2 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/ejbcreation/org/eclipse/jst/j2ee/ejb/project/facet/EjbFacetInstallDelegate.java
+++ b/plugins/org.eclipse.jst.j2ee.ejb/ejbcreation/org/eclipse/jst/j2ee/ejb/project/facet/EjbFacetInstallDelegate.java
@@ -102,7 +102,7 @@
 				}
 			}
 			
-			if( fv == IJ2EEFacetConstants.EJB_32 || fv == IJ2EEFacetConstants.EJB_31 || fv == IJ2EEFacetConstants.EJB_30)
+			if(fv == IJ2EEFacetConstants.EJB_40 || fv == IJ2EEFacetConstants.EJB_32 || fv == IJ2EEFacetConstants.EJB_31 || fv == IJ2EEFacetConstants.EJB_30)
             {
                 if(model.getBooleanProperty(IJ2EEFacetInstallDataModelProperties.GENERATE_DD)){
                     // Create the deployment descriptor (ejb-jar.xml) if one doesn't exist
@@ -110,7 +110,9 @@
                     if (!ejbJarXmlFile.exists()) {
                         try {
                         	String ejbJarXmlContents = null;
-                        	if(fv == IJ2EEFacetConstants.EJB_32) {
+                            if(fv == IJ2EEFacetConstants.EJB_40) {
+                                ejbJarXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<ejb-jar version=\"4.0\" xmlns=\"https://jakarta.ee/xml/ns/jakartaee\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/ejb-jar_4_0.xsd\">\n  <display-name>" + XMLWriter.getEscaped(project.getName()) +" </display-name> \n </ejb-jar>"; //$NON-NLS-1$ //$NON-NLS-2$
+                            } else if(fv == IJ2EEFacetConstants.EJB_32) {
 	                            ejbJarXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<ejb-jar version=\"3.2\" xmlns=\"http://xmlns.jcp.org/xml/ns/javaee\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/ejb-jar_3_2.xsd\">\n  <display-name>" + XMLWriter.getEscaped(project.getName()) +" </display-name> \n </ejb-jar>"; //$NON-NLS-1$ //$NON-NLS-2$
                         	} else if(fv == IJ2EEFacetConstants.EJB_31) {
 	                            ejbJarXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<ejb-jar version=\"3.1\" xmlns=\"http://java.sun.com/xml/ns/javaee\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd\">\n  <display-name>" + XMLWriter.getEscaped(project.getName()) +" </display-name> \n </ejb-jar>"; //$NON-NLS-1$ //$NON-NLS-2$
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/plugin.xml b/plugins/org.eclipse.jst.j2ee.ejb/plugin.xml
index 92d134c..2cbb80b 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/plugin.xml
+++ b/plugins/org.eclipse.jst.j2ee.ejb/plugin.xml
@@ -208,6 +208,16 @@
       	<group-member id="modules"/>
     </project-facet-version>
     
+	<project-facet-version facet="jst.ejb" version="4.0">
+		<constraint>
+ 	       <and>
+ 		       	<requires facet="jst.java" version="[11"/>
+ 	         	<conflicts group="modules"/>
+ 	       </and>
+    	</constraint>
+      	<group-member id="modules"/>
+    </project-facet-version>  
+    
     <action facet="jst.ejb" type="INSTALL" id="jst.ejb.install">
       <delegate class="org.eclipse.jst.j2ee.ejb.project.facet.EjbFacetInstallDelegate"/>
       <config-factory class="org.eclipse.jst.j2ee.internal.ejb.project.operations.EjbFacetInstallDataModelProvider"/>
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/pom.xml b/plugins/org.eclipse.jst.j2ee.ejb/pom.xml
index d469041..56eba7b 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/pom.xml
+++ b/plugins/org.eclipse.jst.j2ee.ejb/pom.xml
@@ -21,6 +21,6 @@
 
   <groupId>org.eclipse.webtools.ejb</groupId>
   <artifactId>org.eclipse.jst.j2ee.ejb</artifactId>
-  <version>1.1.901-SNAPSHOT</version>
+  <version>1.1.902-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 </project>
diff --git a/plugins/org.eclipse.jst.j2ee.jca.ui/jca_ui/org/eclipse/jst/j2ee/jca/ui/internal/wizard/ConnectorProjectFirstPage.java b/plugins/org.eclipse.jst.j2ee.jca.ui/jca_ui/org/eclipse/jst/j2ee/jca/ui/internal/wizard/ConnectorProjectFirstPage.java
index 51dcf35..0265969 100644
--- a/plugins/org.eclipse.jst.j2ee.jca.ui/jca_ui/org/eclipse/jst/j2ee/jca/ui/internal/wizard/ConnectorProjectFirstPage.java
+++ b/plugins/org.eclipse.jst.j2ee.jca.ui/jca_ui/org/eclipse/jst/j2ee/jca/ui/internal/wizard/ConnectorProjectFirstPage.java
@@ -52,8 +52,11 @@
 	    }
 	    else {
 		    facets.add(primaryFacetVersion);
-		    
-		    if( primaryFacetVersion == IJ2EEFacetConstants.JCA_17)
+		    if( primaryFacetVersion == IJ2EEFacetConstants.JCA_21)
+            {
+                facets.add(JavaFacet.VERSION_11);
+            }		    
+		    else if( primaryFacetVersion == IJ2EEFacetConstants.JCA_17)
 		    {
 		        facets.add(JavaFacet.VERSION_1_7);
 		    }
diff --git a/plugins/org.eclipse.jst.j2ee.jca/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.j2ee.jca/META-INF/MANIFEST.MF
index 98c4b07..e2a60ac 100644
--- a/plugins/org.eclipse.jst.j2ee.jca/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.jst.j2ee.jca/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.jst.j2ee.jca; singleton:=true
-Bundle-Version: 1.1.1000.qualifier
+Bundle-Version: 1.1.1001.qualifier
 Bundle-Activator: org.eclipse.jst.j2ee.jca.internal.plugin.JcaPlugin
 Bundle-Vendor: %pluginVendor
 Bundle-Localization: plugin
diff --git a/plugins/org.eclipse.jst.j2ee.jca/jca/org/eclipse/jst/j2ee/internal/jca/project/facet/ConnectorFacetInstallDataModelProvider.java b/plugins/org.eclipse.jst.j2ee.jca/jca/org/eclipse/jst/j2ee/internal/jca/project/facet/ConnectorFacetInstallDataModelProvider.java
index 4d6cddc..97d5dd0 100644
--- a/plugins/org.eclipse.jst.j2ee.jca/jca/org/eclipse/jst/j2ee/internal/jca/project/facet/ConnectorFacetInstallDataModelProvider.java
+++ b/plugins/org.eclipse.jst.j2ee.jca/jca/org/eclipse/jst/j2ee/internal/jca/project/facet/ConnectorFacetInstallDataModelProvider.java
@@ -66,6 +66,9 @@
 			if(J2EEVersionConstants.VERSION_1_7_TEXT.equals(facetVersion)) {
 				return Boolean.valueOf(J2EEPlugin.getDefault().getJ2EEPreferences().getBoolean(J2EEPreferences.Keys.EE7_CONNECTOR_GENERATE_DD));
 			}
+			if(J2EEVersionConstants.VERSION_2_1_TEXT.equals(facetVersion)) {
+                return Boolean.valueOf(J2EEPlugin.getDefault().getJ2EEPreferences().getBoolean(J2EEPreferences.Keys.EE10_CONNECTOR_GENERATE_DD));
+            }
 			return Boolean.TRUE;
 		}
 		return super.getDefaultProperty(propertyName);
diff --git a/plugins/org.eclipse.jst.j2ee.jca/jca/org/eclipse/jst/j2ee/jca/project/facet/ConnectorFacetInstallDelegate.java b/plugins/org.eclipse.jst.j2ee.jca/jca/org/eclipse/jst/j2ee/jca/project/facet/ConnectorFacetInstallDelegate.java
index d2555d8..fade953 100644
--- a/plugins/org.eclipse.jst.j2ee.jca/jca/org/eclipse/jst/j2ee/jca/project/facet/ConnectorFacetInstallDelegate.java
+++ b/plugins/org.eclipse.jst.j2ee.jca/jca/org/eclipse/jst/j2ee/jca/project/facet/ConnectorFacetInstallDelegate.java
@@ -68,6 +68,7 @@
 	public static final String CONNECTOR_XML_TEMPLATE_15		= "rartp15.xml"; //$NON-NLS-1$
 	public static final String CONNECTOR_XML_TEMPLATE_16		= "rartp16.xml"; //$NON-NLS-1$
 	public static final String CONNECTOR_XML_TEMPLATE_17		= "rartp17.xml"; //$NON-NLS-1$
+	public static final String CONNECTOR_XML_TEMPLATE_21        = "rartp21.xml"; //$NON-NLS-1$
 	
 	public void execute(IProject project, IProjectFacetVersion fv, Object config, IProgressMonitor monitor) throws CoreException {
 		if (monitor != null) {
@@ -106,7 +107,27 @@
 			IPath configFolderpath = pjpath.append(configFolderName);
 			sourceFolder = ws.getRoot().getFolder(configFolderpath);
 
-			if( fv == IJ2EEFacetConstants.JCA_17)
+			if( fv == IJ2EEFacetConstants.JCA_21)
+            {
+                if(model.getBooleanProperty(IJ2EEFacetInstallDataModelProperties.GENERATE_DD)){
+                    // Create the deployment descriptor (ra.xml) if one doesn't exist
+                    IFile rarFile = sourceFolder.getFile(new Path(J2EEConstants.RAR_DD_URI));
+                    if (!rarFile.exists()) {
+                        try {
+                            if(!rarFile.getParent().exists()
+                                    && (rarFile.getParent().getType() ==  IResource.FOLDER)){
+                                ((IFolder)rarFile.getParent()).create(true, true, monitor);
+                            }
+                            InputStream in = getClass().getResourceAsStream(CONNECTOR_XML_TEMPLATE_21);
+                            rarFile.create(in, true, monitor);
+                            populateDefaultContent(project, fv);
+                        } catch (CoreException e) {
+                            J2EEPlugin.logError(e);
+                        }
+                    }
+                }
+            }			
+			else if( fv == IJ2EEFacetConstants.JCA_17)
 			{
 		        if(model.getBooleanProperty(IJ2EEFacetInstallDataModelProperties.GENERATE_DD)){
 		            // Create the deployment descriptor (ra.xml) if one doesn't exist
diff --git a/plugins/org.eclipse.jst.j2ee.jca/jca/org/eclipse/jst/j2ee/jca/project/facet/rartp21.xml b/plugins/org.eclipse.jst.j2ee.jca/jca/org/eclipse/jst/j2ee/jca/project/facet/rartp21.xml
new file mode 100644
index 0000000..61ff511
--- /dev/null
+++ b/plugins/org.eclipse.jst.j2ee.jca/jca/org/eclipse/jst/j2ee/jca/project/facet/rartp21.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<connector id="Connector_ID" version="2.1" xmlns="https://jakarta.ee/xml/ns/jakartaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/connector_2_1.xsd"> 

+	<description></description>

+	<vendor-name></vendor-name>

+  	<eis-type></eis-type>

+  	<resourceadapter-version></resourceadapter-version>                                  

+  	<resourceadapter>

+  	</resourceadapter>

+</connector>

diff --git a/plugins/org.eclipse.jst.j2ee.jca/plugin.xml b/plugins/org.eclipse.jst.j2ee.jca/plugin.xml
index 374905a..db68610 100644
--- a/plugins/org.eclipse.jst.j2ee.jca/plugin.xml
+++ b/plugins/org.eclipse.jst.j2ee.jca/plugin.xml
@@ -128,12 +128,22 @@
       <group-member id="modules"/>
     </project-facet-version>
 
-    <action facet="jst.connector" version="[1.0-1.7]" type="INSTALL" id="jst.connector.install">
+   	<project-facet-version facet="jst.connector" version="2.1">
+      <constraint>
+        <and>
+          <requires facet="jst.java" version="[11"/>
+          <conflicts group="modules"/>
+        </and>
+      </constraint>
+      <group-member id="modules"/>
+    </project-facet-version>
+
+    <action facet="jst.connector" version="[1.0-2.1]" type="INSTALL" id="jst.connector.install">
       <delegate class="org.eclipse.jst.j2ee.jca.project.facet.ConnectorFacetInstallDelegate"/>
       <config-factory class="org.eclipse.jst.j2ee.jca.project.facet.ConnectorFacetInstallDataModelProvider"/>
     </action>
     
-    <event-handler facet="jst.connector" version="[1.0-1.7]" type="POST_INSTALL">
+    <event-handler facet="jst.connector" version="[1.0-2.1]" type="POST_INSTALL">
       <delegate class="org.eclipse.jst.j2ee.jca.project.facet.ConnectorFacetPostInstallDelegate"/>
     </event-handler>
     
diff --git a/plugins/org.eclipse.jst.j2ee.jca/pom.xml b/plugins/org.eclipse.jst.j2ee.jca/pom.xml
index 335202e..b7dd4c9 100644
--- a/plugins/org.eclipse.jst.j2ee.jca/pom.xml
+++ b/plugins/org.eclipse.jst.j2ee.jca/pom.xml
@@ -21,6 +21,6 @@
 
   <groupId>org.eclipse.webtools.javaee</groupId>
   <artifactId>org.eclipse.jst.j2ee.jca</artifactId>
-  <version>1.1.1000-SNAPSHOT</version>
+  <version>1.1.1001-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 </project>
diff --git a/plugins/org.eclipse.jst.j2ee.ui/j2ee_ui/org/eclipse/jst/j2ee/ui/project/facet/appclient/AppClientProjectFirstPage.java b/plugins/org.eclipse.jst.j2ee.ui/j2ee_ui/org/eclipse/jst/j2ee/ui/project/facet/appclient/AppClientProjectFirstPage.java
index ebfc3ec..d4984f8 100644
--- a/plugins/org.eclipse.jst.j2ee.ui/j2ee_ui/org/eclipse/jst/j2ee/ui/project/facet/appclient/AppClientProjectFirstPage.java
+++ b/plugins/org.eclipse.jst.j2ee.ui/j2ee_ui/org/eclipse/jst/j2ee/ui/project/facet/appclient/AppClientProjectFirstPage.java
@@ -53,7 +53,10 @@
 	    }
 	    else {
 		    facets.add( primaryFacetVersion );
-		    if (primaryFacetVersion == IJ2EEFacetConstants.APPLICATION_CLIENT_80) {
+	        if (primaryFacetVersion == IJ2EEFacetConstants.APPLICATION_CLIENT_100) {
+                  facets.add(JavaFacet.VERSION_11);
+	        }
+	        else if (primaryFacetVersion == IJ2EEFacetConstants.APPLICATION_CLIENT_80) {
 		    		facets.add(JavaFacet.VERSION_1_8);
 		    }
 		    else if( primaryFacetVersion == IJ2EEFacetConstants.APPLICATION_CLIENT_70)
diff --git a/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/web/project/facet/WebFacetInstallDataModelProvider.java b/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/web/project/facet/WebFacetInstallDataModelProvider.java
index 455c0f8..2c13347 100644
--- a/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/web/project/facet/WebFacetInstallDataModelProvider.java
+++ b/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/web/project/facet/WebFacetInstallDataModelProvider.java
@@ -112,6 +112,9 @@
 			else if(J2EEVersionConstants.VERSION_5_0_TEXT.equals(facetVersion)) {
 				return Boolean.valueOf(J2EEPlugin.getDefault().getJ2EEPreferences().getBoolean(J2EEPreferences.Keys.EE9_DYNAMIC_WEB_GENERATE_DD));
 			}
+			else if(J2EEVersionConstants.VERSION_6_0_TEXT.equals(facetVersion)) {
+                return Boolean.valueOf(J2EEPlugin.getDefault().getJ2EEPreferences().getBoolean(J2EEPreferences.Keys.EE10_DYNAMIC_WEB_GENERATE_DD));
+            }
 			return Boolean.TRUE;
 		}else if (propertyName.equals(INSTALL_WEB_LIBRARY)){
 			return J2EEComponentClasspathContainerUtils.getDefaultUseWebAppLibraries();
diff --git a/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/web/project/facet/WebFragmentFacetInstallDelegate.java b/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/web/project/facet/WebFragmentFacetInstallDelegate.java
index a026e6f..680de64 100644
--- a/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/web/project/facet/WebFragmentFacetInstallDelegate.java
+++ b/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/web/project/facet/WebFragmentFacetInstallDelegate.java
@@ -126,7 +126,13 @@
 			
 			final String webFragXmlContents;
 			
-			if (fv == IJ2EEFacetConstants.WEBFRAGMENT_40) {
+			if (fv == IJ2EEFacetConstants.WEBFRAGMENT_60) {
+                webFragXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<web-fragment id=\"WebFragment_ID\" version=\"6.0\" xmlns=\"https://jakarta.ee/xml/ns/jakartaee\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-fragment_6_0.xsd\">\n<display-name>" + XMLWriter.getEscaped(project.getName())+ "</display-name> \n <name>"+ XMLWriter.getEscaped(projectNamewithoutSpecialChars) +  "</name> \n </web-fragment>"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+            }
+			else if (fv == IJ2EEFacetConstants.WEBFRAGMENT_50) {
+                webFragXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<web-fragment id=\"WebFragment_ID\" version=\"5.0\" xmlns=\"https://jakarta.ee/xml/ns/jakartaee\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-fragment_5_0.xsd\">\n<display-name>" + XMLWriter.getEscaped(project.getName())+ "</display-name> \n <name>"+ XMLWriter.getEscaped(projectNamewithoutSpecialChars) +  "</name> \n </web-fragment>"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+            } 			
+			else if (fv == IJ2EEFacetConstants.WEBFRAGMENT_40) {
 				webFragXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<web-fragment id=\"WebFragment_ID\" version=\"4.0\" xmlns=\"http://xmlns.jcp.org/xml/ns/javaee\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-fragment_4_0.xsd\">\n<display-name>" + XMLWriter.getEscaped(project.getName())+ "</display-name> \n <name>"+ XMLWriter.getEscaped(projectNamewithoutSpecialChars) +  "</name> \n </web-fragment>"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
 			} 
 			else if( fv == IJ2EEFacetConstants.WEBFRAGMENT_31 ) {
diff --git a/plugins/org.eclipse.jst.j2ee/appclientcreation/org/eclipse/jst/j2ee/project/facet/AppClientFacetInstallDelegate.java b/plugins/org.eclipse.jst.j2ee/appclientcreation/org/eclipse/jst/j2ee/project/facet/AppClientFacetInstallDelegate.java
index 00c4ee7..57b1ca8 100644
--- a/plugins/org.eclipse.jst.j2ee/appclientcreation/org/eclipse/jst/j2ee/project/facet/AppClientFacetInstallDelegate.java
+++ b/plugins/org.eclipse.jst.j2ee/appclientcreation/org/eclipse/jst/j2ee/project/facet/AppClientFacetInstallDelegate.java
@@ -115,7 +115,8 @@
 		IPath configFolderpath = pjpath.append(configFolderName);
 		sourceFolder = ws.getRoot().getFolder(configFolderpath);
 
-        if( fv == IJ2EEFacetConstants.APPLICATION_CLIENT_80 ||
+        if(fv == IJ2EEFacetConstants.APPLICATION_CLIENT_100 ||
+                fv == IJ2EEFacetConstants.APPLICATION_CLIENT_80 ||
         		fv == IJ2EEFacetConstants.APPLICATION_CLIENT_70 ||
             fv == IJ2EEFacetConstants.APPLICATION_CLIENT_60 ||
             fv == IJ2EEFacetConstants.APPLICATION_CLIENT_50 )
@@ -130,7 +131,10 @@
 	                        ((IFolder)appClientFile.getParent()).create(true, true, monitor);
 	                    }
 	                    String appClientXmlContents = null;
-	                    if (fv == IJ2EEFacetConstants.APPLICATION_CLIENT_80) {
+                        if (fv == IJ2EEFacetConstants.APPLICATION_CLIENT_100) {
+                            appClientXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<application-client version=\"10\" xmlns=\"https://jakarta.ee/xml/ns/jakartaee\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/application-client_10.xsd\">\n <display-name>" + XMLWriter.getEscaped(project.getName()) +  "</display-name> \n </application-client>"; //$NON-NLS-1$ //$NON-NLS-2$
+                        }
+                        else if (fv == IJ2EEFacetConstants.APPLICATION_CLIENT_80) {
 	                    	appClientXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<application-client version=\"8\" xmlns=\"http://xmlns.jcp.org/xml/ns/javaee\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/application-client_8.xsd\">\n <display-name>" + XMLWriter.getEscaped(project.getName()) +  "</display-name> \n </application-client>"; //$NON-NLS-1$ //$NON-NLS-2$
 	                    }
 	                    else if (fv == IJ2EEFacetConstants.APPLICATION_CLIENT_70) {
diff --git a/plugins/org.eclipse.jst.j2ee/archiveops/org/eclipse/jst/j2ee/internal/archive/JavaEEArchiveUtilities.java b/plugins/org.eclipse.jst.j2ee/archiveops/org/eclipse/jst/j2ee/internal/archive/JavaEEArchiveUtilities.java
index 03dbdbb..c9548a0 100644
--- a/plugins/org.eclipse.jst.j2ee/archiveops/org/eclipse/jst/j2ee/internal/archive/JavaEEArchiveUtilities.java
+++ b/plugins/org.eclipse.jst.j2ee/archiveops/org/eclipse/jst/j2ee/internal/archive/JavaEEArchiveUtilities.java
@@ -221,7 +221,9 @@
 						version = J2EEVersionConstants.EJB_3_1_ID;
 					} else if (versionStr.equals(J2EEVersionConstants.VERSION_3_2_TEXT)) {
 						version = J2EEVersionConstants.EJB_3_2_ID;
-					}
+					} else if (versionStr.equals(J2EEVersionConstants.VERSION_4_0_TEXT)) {
+                        version = J2EEVersionConstants.EJB_4_0_ID;
+                    }
 					break;
 				case J2EEVersionConstants.WEB_TYPE:
 					if (versionStr.equals(J2EEVersionConstants.VERSION_2_2_TEXT)) {
diff --git a/plugins/org.eclipse.jst.j2ee/common/org/eclipse/jst/j2ee/internal/common/J2EEVersionUtil.java b/plugins/org.eclipse.jst.j2ee/common/org/eclipse/jst/j2ee/internal/common/J2EEVersionUtil.java
index ed42814..c4d1dda 100644
--- a/plugins/org.eclipse.jst.j2ee/common/org/eclipse/jst/j2ee/internal/common/J2EEVersionUtil.java
+++ b/plugins/org.eclipse.jst.j2ee/common/org/eclipse/jst/j2ee/internal/common/J2EEVersionUtil.java
@@ -50,6 +50,9 @@
 
 		case J2EEVersionConstants.SERVLET_5_0:
 			return J2EEVersionConstants.VERSION_5_0_TEXT;
+			
+		case J2EEVersionConstants.SERVLET_6_0:
+            return J2EEVersionConstants.VERSION_6_0_TEXT;			
 		}
 		return ""; //$NON-NLS-1$
 
@@ -78,6 +81,8 @@
 		
 		case J2EEVersionConstants.EJB_3_2_ID:
 			return J2EEVersionConstants.VERSION_3_2_TEXT;
+	    case J2EEVersionConstants.EJB_4_0_ID:
+            return J2EEVersionConstants.VERSION_4_0_TEXT;			
 		}
 		return ""; //$NON-NLS-1$
 	}
@@ -96,6 +101,9 @@
 		case J2EEVersionConstants.JCA_1_7_ID:
 			return J2EEVersionConstants.VERSION_1_7_TEXT;
 
+        case J2EEVersionConstants.JCA_2_1_ID:
+            return J2EEVersionConstants.VERSION_2_1_TEXT;
+			
 		}
 		return ""; //$NON-NLS-1$
 	}
@@ -122,7 +130,9 @@
 		
 		case J2EEVersionConstants.JEE_8_0_ID:
 			return J2EEVersionConstants.VERSION_8_0_TEXT;
-			
+
+		case J2EEVersionConstants.JEE_10_0_ID:
+            return J2EEVersionConstants.VERSION_10_0_TEXT;			
 		}
 		return "";//$NON-NLS-1$
 	}
@@ -142,6 +152,8 @@
 			return J2EEVersionConstants.JEE_7_0_ID;
 		if (version.equals(J2EEVersionConstants.VERSION_8_0_TEXT))
 			return J2EEVersionConstants.JEE_8_0_ID;
+		if (version.equals(J2EEVersionConstants.VERSION_10_0_TEXT))
+            return J2EEVersionConstants.JEE_10_0_ID;		
 		// default
 		return J2EEVersionConstants.JEE_5_0_ID;
 	}
@@ -159,6 +171,9 @@
 			return J2EEVersionConstants.JEE_6_0_ID;
 		if (version.equals(J2EEVersionConstants.VERSION_3_2_TEXT))
 			return J2EEVersionConstants.JEE_7_0_ID;
+	    if (version.equals(J2EEVersionConstants.VERSION_4_0_TEXT))
+	        return J2EEVersionConstants.JEE_10_0_ID;
+
 		// default
 		return J2EEVersionConstants.JEE_5_0_ID;
 	}
@@ -180,6 +195,8 @@
 			return J2EEVersionConstants.JEE_8_0_ID;
 		if (version.equals(J2EEVersionConstants.VERSION_5_0_TEXT))
 			return J2EEVersionConstants.JEE_9_0_ID;
+		if (version.equals(J2EEVersionConstants.VERSION_6_0_TEXT))
+            return J2EEVersionConstants.JEE_10_0_ID;
 		// default
 		return J2EEVersionConstants.JEE_8_0_ID;
 	}
@@ -195,6 +212,9 @@
 			return J2EEVersionConstants.J2EE_1_4_ID;
 		if (version.equals(J2EEVersionConstants.VERSION_1_6_TEXT))
 			return J2EEVersionConstants.JEE_6_0_ID;
+		if (version.equals(J2EEVersionConstants.VERSION_2_1_TEXT))
+            return J2EEVersionConstants.JEE_10_0_ID;
+
 		// default
 		return J2EEVersionConstants.JEE_6_0_ID;
 	}
@@ -214,6 +234,8 @@
 			case J2EEVersionConstants.JEE_7_0_ID:
 			case J2EEVersionConstants.JEE_8_0_ID:
 				return J2EEVersionConstants.EJB_3_2_ID;
+			case J2EEVersionConstants.JEE_10_0_ID:
+                return J2EEVersionConstants.EJB_4_0_ID;				
 		}
 		// default
 		return J2EEVersionConstants.EJB_3_1_ID;
@@ -235,6 +257,11 @@
 				return J2EEVersionConstants.WEB_3_1_ID;
 			case J2EEVersionConstants.JEE_8_0_ID:
 				return J2EEVersionConstants.WEB_4_0_ID;
+	        case J2EEVersionConstants.JEE_9_0_ID:
+	            return J2EEVersionConstants.WEB_5_0_ID;
+            case J2EEVersionConstants.JEE_10_0_ID:
+                return J2EEVersionConstants.WEB_6_0_ID;
+	
 		}
 		// default
 		return J2EEVersionConstants.WEB_3_0_ID;
@@ -252,6 +279,8 @@
 			case J2EEVersionConstants.JEE_7_0_ID:
 			case J2EEVersionConstants.JEE_8_0_ID:
 				return J2EEVersionConstants.JCA_1_7_ID;
+			case J2EEVersionConstants.JEE_10_0_ID:
+                return J2EEVersionConstants.JCA_2_1_ID;	
 		}
 		// default
 		return J2EEVersionConstants.JCA_1_6_ID;
@@ -344,6 +373,9 @@
 		else if (J2EEVersionConstants.VERSION_8_0_TEXT.equals(version))
 			nVersion = J2EEVersionConstants.VERSION_8_0;
 		
+		else if (J2EEVersionConstants.VERSION_10_0_TEXT.equals(version))
+            nVersion = J2EEVersionConstants.VERSION_10_0;
+		
 		return nVersion;
 	}
 	public static String convertVersionIntToString(int version) {
@@ -418,6 +450,9 @@
 		else if (version == J2EEVersionConstants.VERSION_8_0)
 			nVersion = J2EEVersionConstants.VERSION_8_0_TEXT;
 		
+		else if (version == J2EEVersionConstants.VERSION_10_0)
+            nVersion = J2EEVersionConstants.VERSION_10_0_TEXT;
+		
 		return nVersion;
 	}
 	
@@ -442,6 +477,9 @@
 			case J2EEVersionConstants.JEE_8_0_ID:
 				javaFacetVersion = JavaFacet.VERSION_1_8;
 				break;
+			case J2EEVersionConstants.JEE_10_0_ID:
+                javaFacetVersion = JavaFacet.VERSION_11;
+                break;	
 		}
 		
 		return javaFacetVersion;
diff --git a/plugins/org.eclipse.jst.j2ee/earproject/org/eclipse/jst/j2ee/application/internal/operations/J2EEArtifactImportDataModelProvider.java b/plugins/org.eclipse.jst.j2ee/earproject/org/eclipse/jst/j2ee/application/internal/operations/J2EEArtifactImportDataModelProvider.java
index 41f0972..bb3892f 100644
--- a/plugins/org.eclipse.jst.j2ee/earproject/org/eclipse/jst/j2ee/application/internal/operations/J2EEArtifactImportDataModelProvider.java
+++ b/plugins/org.eclipse.jst.j2ee/earproject/org/eclipse/jst/j2ee/application/internal/operations/J2EEArtifactImportDataModelProvider.java
@@ -317,7 +317,9 @@
 		IProjectFacetVersion javaFacetVersion = null;
 		IRuntime runtime = (IRuntime)getProperty(IFacetProjectCreationDataModelProperties.FACET_RUNTIME);
 		if(runtime != null){
-			if(runtime.supports(JavaFacet.VERSION_1_8)){
+		    if(runtime.supports(JavaFacet.VERSION_11)){
+                javaFacetVersion = JavaFacet.VERSION_11;
+            }else if(runtime.supports(JavaFacet.VERSION_1_8)){
 				javaFacetVersion = JavaFacet.VERSION_1_8;
 			} else if(runtime.supports(JavaFacet.VERSION_1_7)){
 				javaFacetVersion = JavaFacet.VERSION_1_7;
@@ -348,6 +350,9 @@
 				break;
 			case J2EEVersionConstants.JEE_8_0_ID:
 				javaFacetVersion = JavaFacet.VERSION_1_8;
+	        case J2EEVersionConstants.JEE_10_0_ID:
+	            javaFacetVersion = JavaFacet.VERSION_11;
+	
 			}
 		}
 		if(javaFacetVersion != null){
@@ -435,6 +440,7 @@
 		int EE5 = 1;
 		int EE7 = 2;
 		int EE8 = 3;
+		int EE10 = 4;
 		switch(archiveType){
 		case JavaEEQuickPeek.APPLICATION_TYPE:
 			ddURI = J2EEConstants.APPLICATION_DD_URI;
@@ -442,10 +448,12 @@
 			highestProjectFacetVersion[EE5] = IJ2EEFacetConstants.ENTERPRISE_APPLICATION_50;
 			highestProjectFacetVersion[EE7] = IJ2EEFacetConstants.ENTERPRISE_APPLICATION_70;
 			highestProjectFacetVersion[EE8] = IJ2EEFacetConstants.ENTERPRISE_APPLICATION_80;
+			highestProjectFacetVersion[EE10] = IJ2EEFacetConstants.ENTERPRISE_APPLICATION_100;
 			highestJQPVersion[EE6] = JavaEEQuickPeek.VERSION_6_0;
 			highestJQPVersion[EE5] = JavaEEQuickPeek.VERSION_5_0;
 			highestJQPVersion[EE7] = JavaEEQuickPeek.VERSION_7_0;
 			highestJQPVersion[EE8] = JavaEEQuickPeek.VERSION_8_0;
+			highestJQPVersion[EE10] = JavaEEQuickPeek.VERSION_10_0;
 			break;
 		case JavaEEQuickPeek.APPLICATION_CLIENT_TYPE:
 			ddURI = J2EEConstants.APP_CLIENT_DD_URI;
@@ -453,10 +461,12 @@
 			highestProjectFacetVersion[EE5] = IJ2EEFacetConstants.APPLICATION_CLIENT_50;
 			highestProjectFacetVersion[EE7] = IJ2EEFacetConstants.APPLICATION_CLIENT_70;
 			highestProjectFacetVersion[EE8] = IJ2EEFacetConstants.APPLICATION_CLIENT_80;
+			highestProjectFacetVersion[EE10] = IJ2EEFacetConstants.APPLICATION_CLIENT_100;
 			highestJQPVersion[EE6] = JavaEEQuickPeek.VERSION_6_0;
 			highestJQPVersion[EE5] = JavaEEQuickPeek.VERSION_5_0;
 			highestJQPVersion[EE7] = JavaEEQuickPeek.VERSION_7_0;
 			highestJQPVersion[EE8] = JavaEEQuickPeek.VERSION_8_0;
+			highestJQPVersion[EE10] = JavaEEQuickPeek.VERSION_10_0;
 			break;
 		case JavaEEQuickPeek.EJB_TYPE:
 			ddURI = J2EEConstants.EJBJAR_DD_URI;
@@ -464,10 +474,12 @@
 			highestProjectFacetVersion[EE5] = IJ2EEFacetConstants.EJB_30;
 			highestProjectFacetVersion[EE7] = IJ2EEFacetConstants.EJB_32;
 			highestProjectFacetVersion[EE8] = IJ2EEFacetConstants.EJB_32;
+			highestProjectFacetVersion[EE10] = IJ2EEFacetConstants.EJB_40;
 			highestJQPVersion[EE6] = JavaEEQuickPeek.VERSION_3_1;
 			highestJQPVersion[EE5] = JavaEEQuickPeek.VERSION_3_0;
 			highestJQPVersion[EE7] = JavaEEQuickPeek.VERSION_3_2;
 			highestJQPVersion[EE8] = JavaEEQuickPeek.VERSION_3_2;
+			highestJQPVersion[EE10] = JavaEEQuickPeek.VERSION_4_0;
 			break;
 		case JavaEEQuickPeek.WEB_TYPE:
 			ddURI = J2EEConstants.WEBAPP_DD_URI;
@@ -475,19 +487,23 @@
 			highestProjectFacetVersion[EE5] = IJ2EEFacetConstants.DYNAMIC_WEB_25;
 			highestProjectFacetVersion[EE7] = IJ2EEFacetConstants.DYNAMIC_WEB_31;
 			highestProjectFacetVersion[EE8] = IJ2EEFacetConstants.DYNAMIC_WEB_40;
+			highestProjectFacetVersion[EE10] = IJ2EEFacetConstants.DYNAMIC_WEB_60;
 			highestJQPVersion[EE6] = JavaEEQuickPeek.VERSION_3_0;
 			highestJQPVersion[EE5] = JavaEEQuickPeek.VERSION_2_5;
 			highestJQPVersion[EE7] = JavaEEQuickPeek.VERSION_3_1;
 			highestJQPVersion[EE8] = JavaEEQuickPeek.VERSION_4_0;
+			highestJQPVersion[EE10] = JavaEEQuickPeek.VERSION_6_0;
 			break;
 		case JavaEEQuickPeek.CONNECTOR_TYPE:
 			ddURI = J2EEConstants.RAR_DD_URI;
 			highestProjectFacetVersion[EE6] = IJ2EEFacetConstants.JCA_16;
 			highestProjectFacetVersion[EE7] = IJ2EEFacetConstants.JCA_17;
 			highestProjectFacetVersion[EE8] = IJ2EEFacetConstants.JCA_17;
+			highestProjectFacetVersion[EE10] = IJ2EEFacetConstants.JCA_21;
 			highestJQPVersion[EE6] = JavaEEQuickPeek.VERSION_1_6;
 			highestJQPVersion[EE7] = JavaEEQuickPeek.VERSION_1_7;
 			highestJQPVersion[EE8] = JavaEEQuickPeek.VERSION_1_7;
+			highestJQPVersion[EE10] = JavaEEQuickPeek.VERSION_2_1;
 			break;
 		default:
 			return jqp;
@@ -500,7 +516,9 @@
 		IRuntime runtime = (IRuntime)getProperty(IFacetProjectCreationDataModelProperties.FACET_RUNTIME);
 		if(archiveType == JavaEEQuickPeek.CONNECTOR_TYPE || runtime == null || runtime.supports(highestProjectFacetVersion[EE8]) ){
 			return new JavaEEQuickPeek(jqp.getType(), highestJQPVersion[EE8]);
-		} else if(runtime.supports(highestProjectFacetVersion[EE7]) ){
+		} else if(runtime.supports(highestProjectFacetVersion[EE10]) ){
+            return new JavaEEQuickPeek(jqp.getType(), highestJQPVersion[EE10]);  
+        } else if(runtime.supports(highestProjectFacetVersion[EE7]) ){
 			return new JavaEEQuickPeek(jqp.getType(), highestJQPVersion[EE7]);	
 		} else if(runtime.supports(highestProjectFacetVersion[EE6]) ){
 			return new JavaEEQuickPeek(jqp.getType(), highestJQPVersion[EE6]);
diff --git a/plugins/org.eclipse.jst.j2ee/earproject/org/eclipse/jst/j2ee/project/facet/EarFacetInstallDelegate.java b/plugins/org.eclipse.jst.j2ee/earproject/org/eclipse/jst/j2ee/project/facet/EarFacetInstallDelegate.java
index fd36cc1..10c9715 100644
--- a/plugins/org.eclipse.jst.j2ee/earproject/org/eclipse/jst/j2ee/project/facet/EarFacetInstallDelegate.java
+++ b/plugins/org.eclipse.jst.j2ee/earproject/org/eclipse/jst/j2ee/project/facet/EarFacetInstallDelegate.java
@@ -73,7 +73,7 @@
 				J2EEPlugin.logError(e);
 			}
 			
-			if( fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_80 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_70 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_60 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_50) {
+			if(fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_100 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_80 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_70 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_60 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_50) {
 				if(model.getBooleanProperty(IJ2EEFacetInstallDataModelProperties.GENERATE_DD)){
 					// Create the deployment descriptor (application.xml) if one doesn't exist
 					IFile appXmlFile = earroot.getUnderlyingFolder().getFile(new Path(J2EEConstants.APPLICATION_DD_URI));
@@ -84,7 +84,9 @@
 								((IFolder)appXmlFile.getParent()).create(true, true, monitor);
 							}
 							String appXmlContents = null;
-							if (fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_80) {
+							if (fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_100) {
+                                appXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<application id=\"Application_ID\" version=\"10\" xmlns=\"https://jakarta.ee/xml/ns/jakartaee\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/application_10.xsd\">\n <display-name>" + XMLWriter.getEscaped(project.getName()) +  "</display-name> \n </application> "; //$NON-NLS-1$ //$NON-NLS-2$
+                            }else if (fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_80) {
 								appXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<application id=\"Application_ID\" version=\"8\" xmlns=\"http://xmlns.jcp.org/xml/ns/javaee\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/application_8.xsd\">\n <display-name>" + XMLWriter.getEscaped(project.getName()) +  "</display-name> \n </application> "; //$NON-NLS-1$ //$NON-NLS-2$
 							}
 							else if(fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_70) {
diff --git a/plugins/org.eclipse.jst.j2ee/j2eecreation/org/eclipse/jst/j2ee/project/EarUtilities.java b/plugins/org.eclipse.jst.j2ee/j2eecreation/org/eclipse/jst/j2ee/project/EarUtilities.java
index 23255bb..f25ff0f 100644
--- a/plugins/org.eclipse.jst.j2ee/j2eecreation/org/eclipse/jst/j2ee/project/EarUtilities.java
+++ b/plugins/org.eclipse.jst.j2ee/j2eecreation/org/eclipse/jst/j2ee/project/EarUtilities.java
@@ -383,6 +383,9 @@
 
 			if (DYNAMIC_WEB.equals(moduleProjectFacetId)) {
 				switch (earVersion) {
+                case J2EEVersionConstants.VERSION_10_0:
+                    retVal.add(DYNAMIC_WEB_60);
+                    //$FALL-THROUGH$
 				case J2EEVersionConstants.VERSION_8_0:
 					retVal.add(DYNAMIC_WEB_40);
 					//$FALL-THROUGH$
@@ -407,6 +410,9 @@
 				}
 			} else if (EJB.equals(moduleProjectFacetId)) {
 				switch (earVersion) {
+				case J2EEVersionConstants.VERSION_10_0:
+                    retVal.add(EJB_40);
+                    //$FALL-THROUGH$
 				case J2EEVersionConstants.VERSION_8_0:
 				case J2EEVersionConstants.VERSION_7_0:
 					retVal.add(EJB_32);
@@ -428,6 +434,8 @@
 				}
 			} else if (JCA.equals(moduleProjectFacetId)) {
 				switch (earVersion) {
+                case J2EEVersionConstants.VERSION_10_0:
+                    retVal.add(JCA_21);
 				case J2EEVersionConstants.VERSION_8_0:
 				case J2EEVersionConstants.VERSION_7_0:
 					retVal.add(JCA_17);
@@ -445,6 +453,9 @@
 				}
 			} else if (APPLICATION_CLIENT.equals(moduleProjectFacetId)) {
 				switch (earVersion) {
+                case J2EEVersionConstants.VERSION_10_0:
+                    retVal.add(APPLICATION_CLIENT_100);
+                    //$FALL-THROUGH$
 				case J2EEVersionConstants.VERSION_8_0:
 					retVal.add(APPLICATION_CLIENT_80);
 					//$FALL-THROUGH$
diff --git a/plugins/org.eclipse.jst.j2ee/j2eecreation/org/eclipse/jst/j2ee/project/JavaEEProjectUtilities.java b/plugins/org.eclipse.jst.j2ee/j2eecreation/org/eclipse/jst/j2ee/project/JavaEEProjectUtilities.java
index 46baac2..55ecffb 100644
--- a/plugins/org.eclipse.jst.j2ee/j2eecreation/org/eclipse/jst/j2ee/project/JavaEEProjectUtilities.java
+++ b/plugins/org.eclipse.jst.j2ee/j2eecreation/org/eclipse/jst/j2ee/project/JavaEEProjectUtilities.java
@@ -465,15 +465,15 @@
 
 	private static int getLatestVersion(IProject project) {
 		if (isEARProject(project) || isApplicationClientProject(project))
-			return J2EEVersionConstants.VERSION_8_0;
+			return J2EEVersionConstants.VERSION_10_0;
 		if (isEJBProject(project))
-			return J2EEVersionConstants.VERSION_3_2;
+			return J2EEVersionConstants.VERSION_4_0;
 		if (isDynamicWebProject(project))
-			return J2EEVersionConstants.VERSION_4_0;
+			return J2EEVersionConstants.VERSION_6_0;
 		if (isWebFragmentProject(project))
-			return J2EEVersionConstants.VERSION_4_0;
+			return J2EEVersionConstants.VERSION_6_0;
 		if (isJCAProject(project))
-			return J2EEVersionConstants.VERSION_1_7;
+			return J2EEVersionConstants.VERSION_2_1;
 		return J2EEVersionConstants.UNKNOWN;
 			
 	}
diff --git a/plugins/org.eclipse.jst.j2ee/j2eecreation/org/eclipse/jst/j2ee/project/facet/IJ2EEFacetConstants.java b/plugins/org.eclipse.jst.j2ee/j2eecreation/org/eclipse/jst/j2ee/project/facet/IJ2EEFacetConstants.java
index 0adafcb..aa8042f 100644
--- a/plugins/org.eclipse.jst.j2ee/j2eecreation/org/eclipse/jst/j2ee/project/facet/IJ2EEFacetConstants.java
+++ b/plugins/org.eclipse.jst.j2ee/j2eecreation/org/eclipse/jst/j2ee/project/facet/IJ2EEFacetConstants.java
@@ -27,6 +27,7 @@
 	public static final IProjectFacetVersion ENTERPRISE_APPLICATION_60 = J2EEFacetConstantsProvider.getProjectFacetVersion(ENTERPRISE_APPLICATION_FACET, "6.0"); //$NON-NLS-1$
 	public static final IProjectFacetVersion ENTERPRISE_APPLICATION_70 = J2EEFacetConstantsProvider.getProjectFacetVersion(ENTERPRISE_APPLICATION_FACET, "7.0"); //$NON-NLS-1$
 	public static final IProjectFacetVersion ENTERPRISE_APPLICATION_80 = J2EEFacetConstantsProvider.getProjectFacetVersion(ENTERPRISE_APPLICATION_FACET, "8.0"); //$NON-NLS-1$
+	public static final IProjectFacetVersion ENTERPRISE_APPLICATION_100 = J2EEFacetConstantsProvider.getProjectFacetVersion(ENTERPRISE_APPLICATION_FACET, "10.0"); //$NON-NLS-1$
 	
 	public static final String APPLICATION_CLIENT = IModuleConstants.JST_APPCLIENT_MODULE;
 	public IProjectFacet APPLICATION_CLIENT_FACET = J2EEFacetConstantsProvider.getProjectFacet(APPLICATION_CLIENT);
@@ -37,6 +38,7 @@
 	public static final IProjectFacetVersion APPLICATION_CLIENT_60 = J2EEFacetConstantsProvider.getProjectFacetVersion(APPLICATION_CLIENT_FACET, "6.0"); //$NON-NLS-1$
 	public static final IProjectFacetVersion APPLICATION_CLIENT_70 = J2EEFacetConstantsProvider.getProjectFacetVersion(APPLICATION_CLIENT_FACET, "7.0"); //$NON-NLS-1$
 	public static final IProjectFacetVersion APPLICATION_CLIENT_80 = J2EEFacetConstantsProvider.getProjectFacetVersion(APPLICATION_CLIENT_FACET, "8.0"); //$NON-NLS-1$
+	public static final IProjectFacetVersion APPLICATION_CLIENT_100 = J2EEFacetConstantsProvider.getProjectFacetVersion(APPLICATION_CLIENT_FACET, "10.0"); //$NON-NLS-1$
 	
 	public static final String EJB = IModuleConstants.JST_EJB_MODULE;
 	public IProjectFacet EJB_FACET = J2EEFacetConstantsProvider.getProjectFacet(EJB);
@@ -46,6 +48,7 @@
 	public static final IProjectFacetVersion EJB_30 = J2EEFacetConstantsProvider.getProjectFacetVersion(EJB_FACET, "3.0"); //$NON-NLS-1$
 	public static final IProjectFacetVersion EJB_31 = J2EEFacetConstantsProvider.getProjectFacetVersion(EJB_FACET, "3.1"); //$NON-NLS-1$
 	public static final IProjectFacetVersion EJB_32 = J2EEFacetConstantsProvider.getProjectFacetVersion(EJB_FACET, "3.2"); //$NON-NLS-1$
+	public static final IProjectFacetVersion EJB_40 = J2EEFacetConstantsProvider.getProjectFacetVersion(EJB_FACET, "4.0"); //$NON-NLS-1$
 
 	public static final String DYNAMIC_WEB = IModuleConstants.JST_WEB_MODULE;
 	public IProjectFacet DYNAMIC_WEB_FACET = J2EEFacetConstantsProvider.getProjectFacet(DYNAMIC_WEB);
@@ -71,6 +74,7 @@
 	public static final IProjectFacetVersion JCA_15 = J2EEFacetConstantsProvider.getProjectFacetVersion(JCA_FACET, "1.5"); //$NON-NLS-1$
 	public static final IProjectFacetVersion JCA_16 = J2EEFacetConstantsProvider.getProjectFacetVersion(JCA_FACET, "1.6"); //$NON-NLS-1$
 	public static final IProjectFacetVersion JCA_17 = J2EEFacetConstantsProvider.getProjectFacetVersion(JCA_FACET, "1.7"); //$NON-NLS-1$
+	public static final IProjectFacetVersion JCA_21 = J2EEFacetConstantsProvider.getProjectFacetVersion(JCA_FACET, "2.1"); //$NON-NLS-1$
 
 	public static final String STATIC_WEB = IModuleConstants.WST_WEB_MODULE;
 
@@ -80,6 +84,8 @@
 	public static final IProjectFacetVersion WEBFRAGMENT_30 = J2EEFacetConstantsProvider.getProjectFacetVersion(WEBFRAGMENT_FACET, "3.0"); //$NON-NLS-1$
 	public static final IProjectFacetVersion WEBFRAGMENT_31 = J2EEFacetConstantsProvider.getProjectFacetVersion(WEBFRAGMENT_FACET, "3.1"); //$NON-NLS-1$
 	public static final IProjectFacetVersion WEBFRAGMENT_40 = J2EEFacetConstantsProvider.getProjectFacetVersion(WEBFRAGMENT_FACET, "4.0"); //$NON-NLS-1$
+	public static final IProjectFacetVersion WEBFRAGMENT_50 = J2EEFacetConstantsProvider.getProjectFacetVersion(WEBFRAGMENT_FACET, "5.0"); //$NON-NLS-1$
+	public static final IProjectFacetVersion WEBFRAGMENT_60 = J2EEFacetConstantsProvider.getProjectFacetVersion(WEBFRAGMENT_FACET, "6.0"); //$NON-NLS-1$
 	
 
 	/**
diff --git a/plugins/org.eclipse.jst.j2ee/j2eeplugin/org/eclipse/jst/j2ee/internal/plugin/JavaEEPreferencesInitializer.java b/plugins/org.eclipse.jst.j2ee/j2eeplugin/org/eclipse/jst/j2ee/internal/plugin/JavaEEPreferencesInitializer.java
index 4fd0263..e83889b 100644
--- a/plugins/org.eclipse.jst.j2ee/j2eeplugin/org/eclipse/jst/j2ee/internal/plugin/JavaEEPreferencesInitializer.java
+++ b/plugins/org.eclipse.jst.j2ee/j2eeplugin/org/eclipse/jst/j2ee/internal/plugin/JavaEEPreferencesInitializer.java
@@ -99,6 +99,9 @@
 		 * @since 3.24
 		 */
 		static final String EE9_DYNAMIC_WEB_GENERATE_DD = "ee9_dynamic_web_generate_dd"; //$NON-NLS-1$
+		
+	    static final String EE10_DYNAMIC_WEB_GENERATE_DD = "ee10_dynamic_web_generate_dd"; //$NON-NLS-1$
+
 		/**
 		 * @since 2.0
 		 */
@@ -151,6 +154,8 @@
 	     */
 		static final String EE7_CONNECTOR_GENERATE_DD = "ee7_connector_generate_dd"; //$NON-NLS-1$
 		
+		static final String EE10_CONNECTOR_GENERATE_DD = "ee10_connector_generate_dd"; //$NON-NLS-1$
+		
 		/**
 		 * Used to determine if the business interface annotations should be added to the bean class during EJB creation. 
 		 */
diff --git a/plugins/org.eclipse.jst.j2ee/plugin.xml b/plugins/org.eclipse.jst.j2ee/plugin.xml
index d54bb7a..909fa59 100644
--- a/plugins/org.eclipse.jst.j2ee/plugin.xml
+++ b/plugins/org.eclipse.jst.j2ee/plugin.xml
@@ -463,6 +463,16 @@
       </constraint>
       <group-member id="modules"/>     
     </project-facet-version>    
+
+    <project-facet-version facet="jst.ear" version="10.0">
+      <constraint>
+        <and>
+          <conflicts group="modules"/>
+          <conflicts facet="jst.java"/>
+        </and>
+      </constraint>
+      <group-member id="modules"/>     
+    </project-facet-version>    
             
     <action facet="jst.ear" type="INSTALL" id="jst.ear.install">
       <delegate class="org.eclipse.jst.j2ee.project.facet.EarFacetInstallDelegate"/>
@@ -584,6 +594,16 @@
       </constraint>
       <group-member id="modules"/>     
     </project-facet-version>
+    
+    <project-facet-version facet="jst.appclient" version="10.0">
+      <constraint>
+        <and>
+          <requires facet="jst.java" version="[11"/>
+          <conflicts group="modules"/>
+        </and>
+      </constraint>
+      <group-member id="modules"/>     
+    </project-facet-version>
                 
     <action type="install" facet="jst.appclient" id="jst.appclient.install">
       <delegate class="org.eclipse.jst.j2ee.project.facet.AppClientFacetInstallDelegate"/>
@@ -618,7 +638,7 @@
           facet="jst.ear"
           id="jst.ear.versionchange.legacy"
           type="VERSION_CHANGE"
-          version="[1.4-8.0]">
+          version="[1.4-10.0]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
@@ -628,7 +648,7 @@
           facet="jst.ear"
           id="jst.ear.versionchange.ee5"
           type="VERSION_CHANGE"
-          version="[5.0-8.0]">
+          version="[5.0-10.0]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
@@ -638,7 +658,7 @@
           facet="jst.ear"
           id="jst.ear.versionchange.ee6"
           type="VERSION_CHANGE"
-          version="[6.0-8.0]">
+          version="[6.0-10.0]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
@@ -648,17 +668,27 @@
           facet="jst.ear"
           id="jst.ear.versionchange.ee7"
           type="VERSION_CHANGE"
-          version="[7.0-8.0]">
+          version="[7.0-10.0]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
        <property name="from.versions" value="7.0"/>
     </action>
+     <action
+          facet="jst.ear"
+          id="jst.ear.versionchange.ee8"
+          type="VERSION_CHANGE"
+          version="[8.0-10.0]">
+       <delegate
+             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
+       </delegate>
+       <property name="from.versions" value="10.0"/>
+    </action>
     <action
           facet="jst.appclient"
           id="jst.appclient.versionchange.legacy"
           type="VERSION_CHANGE"
-          version="[1.4-8.0]">
+          version="[1.4-10.0]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
@@ -668,7 +698,7 @@
           facet="jst.appclient"
           id="jst.appclient.versionchange.ee5"
           type="VERSION_CHANGE"
-          version="[5.0-8.0]">
+          version="[5.0-10.0]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
@@ -678,7 +708,7 @@
           facet="jst.appclient"
           id="jst.appclient.versionchange.ee6"
           type="VERSION_CHANGE"
-          version="[6.0-8.0]">
+          version="[6.0-10.0]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
@@ -688,17 +718,27 @@
           facet="jst.appclient"
           id="jst.appclient.versionchange.ee7"
           type="VERSION_CHANGE"
-          version="[7.0-8.0]">
+          version="[7.0-10.0]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
        <property name="from.versions" value="7.0"/> 
     </action>
+ 	<action
+          facet="jst.appclient"
+          id="jst.appclient.versionchange.ee8"
+          type="VERSION_CHANGE"
+          version="[8.0-10.0]">
+       <delegate
+             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
+       </delegate>
+       <property name="from.versions" value="8.0"/> 
+    </action> 
     <action
           facet="jst.ejb"
           id="jst.ejb.versionchange.legacy"
           type="VERSION_CHANGE"
-          version="[2.1-3.2]">
+          version="[2.1-4.0]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
@@ -708,7 +748,7 @@
           facet="jst.ejb"
           id="jst.ejb.versionchange.ee5"
           type="VERSION_CHANGE"
-          version="[3.0-3.2]">
+          version="[3.0-4.0]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
@@ -718,17 +758,27 @@
           facet="jst.ejb"
           id="jst.ejb.versionchange.ee6"
           type="VERSION_CHANGE"
-          version="[3.1-3.2]">
+          version="[3.1-4.0]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
        <property name="from.versions" value="3.1"/>
     </action>
     <action
+          facet="jst.ejb"
+          id="jst.ejb.versionchange.ee8"
+          type="VERSION_CHANGE"
+          version="[3.2-4.0]">
+       <delegate
+             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
+       </delegate>
+       <property name="from.versions" value="3.2"/>
+    </action>
+    <action
           facet="jst.web"
           id="jst.web.versionchange.legacy"
           type="VERSION_CHANGE"
-          version="[2.4-4.0]">
+          version="[2.4-6.0]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
@@ -738,7 +788,7 @@
           facet="jst.web"
           id="jst.web.versionchange.ee5"
           type="VERSION_CHANGE"
-          version="[2.5-4.0]">
+          version="[2.5-6.0]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
@@ -748,7 +798,7 @@
           facet="jst.web"
           id="jst.web.versionchange.ee6"
           type="VERSION_CHANGE"
-          version="[3.0-4.0]">
+          version="[3.0-6.0]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
@@ -758,13 +808,23 @@
           facet="jst.web"
           id="jst.web.versionchange.ee7"
           type="VERSION_CHANGE"
-          version="[3.1-4.0]">
+          version="[3.1-6.0]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
        <property name="from.versions" value="3.1"/>
     </action>
     <action
+          facet="jst.web"
+          id="jst.web.versionchange.ee8"
+          type="VERSION_CHANGE"
+          version="[4.0-6.0]">
+       <delegate
+             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
+       </delegate>
+       <property name="from.versions" value="4.0"/>
+    </action>
+    <action
           facet="jst.webfragment"
           id="jst.webfragment.versionchange.ee6"
           type="VERSION_CHANGE"
@@ -778,7 +838,7 @@
           facet="jst.webfragment"
           id="jst.webfragment.versionchange.ee7"
           type="VERSION_CHANGE"
-          version="[3.1-4.0]">
+          version="[3.1-6.0]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
@@ -788,7 +848,7 @@
           facet="jst.connector"
           id="jst.connector.versionchange.ee5"
           type="VERSION_CHANGE"
-          version="[1.5-1.7]">
+          version="[1.5-2.1]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
@@ -798,12 +858,23 @@
           facet="jst.connector"
           id="jst.connector.versionchange.ee6"
           type="VERSION_CHANGE"
-          version="[1.6-1.7]">
+          version="[1.6-2.1]">
        <delegate
              class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
        </delegate>
        <property name="from.versions" value="1.6"/>
+    </action>
+     <action
+          facet="jst.connector"
+          id="jst.connector.versionchange.ee7"
+          type="VERSION_CHANGE"
+          version="[1.7-2.1]">
+       <delegate
+             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
+       </delegate>
+       <property name="from.versions" value="1.7"/>
     </action>     
+         
   </extension>
   
   <extension point="org.eclipse.wst.common.project.facet.core.validators">
diff --git a/plugins/org.eclipse.jst.jee.ejb/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.jee.ejb/META-INF/MANIFEST.MF
index 8ab4add..3c26d08 100644
--- a/plugins/org.eclipse.jst.jee.ejb/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.jst.jee.ejb/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %Bundle-Name.0
 Bundle-SymbolicName: org.eclipse.jst.jee.ejb;singleton:=true
-Bundle-Version: 1.0.500.qualifier
+Bundle-Version: 1.0.501.qualifier
 Bundle-Activator: org.eclipse.jst.jee.ejb.Activator
 Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.2.0,4.0.0)",
  org.eclipse.wst.common.modulecore;bundle-version="[1.1.0,2.0.0)",
diff --git a/plugins/org.eclipse.jst.jee.ejb/ejb/org/eclipse/jst/jee/model/internal/Ejb3ModelProvider.java b/plugins/org.eclipse.jst.jee.ejb/ejb/org/eclipse/jst/jee/model/internal/Ejb3ModelProvider.java
index 20b2aeb..0d8534b 100644
--- a/plugins/org.eclipse.jst.jee.ejb/ejb/org/eclipse/jst/jee/model/internal/Ejb3ModelProvider.java
+++ b/plugins/org.eclipse.jst.jee.ejb/ejb/org/eclipse/jst/jee/model/internal/Ejb3ModelProvider.java
@@ -70,6 +70,10 @@
 			dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE_NS_URL, J2EEConstants.EJB_JAR_SCHEMA_LOC_3_1);
 			jar.setVersion(J2EEVersionConstants.VERSION_3_1_TEXT);
 		}
+        else if(version != null && version.equals(J2EEVersionConstants.VERSION_4_0_TEXT)) {
+            dd.getXSISchemaLocation().put(J2EEConstants.JAKARTAEE9_NS_URL, J2EEConstants.EJB_JAR_SCHEMA_LOC_4_0);
+            jar.setVersion(J2EEVersionConstants.VERSION_4_0_TEXT);
+        }
 		else {
 			dd.getXMLNSPrefixMap().put("", J2EEConstants.JAVAEE7_NS_URL);  //$NON-NLS-1$
 			dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE7_NS_URL, J2EEConstants.EJB_JAR_SCHEMA_LOC_3_2);
diff --git a/plugins/org.eclipse.jst.jee.ejb/plugin.xml b/plugins/org.eclipse.jst.jee.ejb/plugin.xml
index b9c46a9..d326369 100644
--- a/plugins/org.eclipse.jst.jee.ejb/plugin.xml
+++ b/plugins/org.eclipse.jst.jee.ejb/plugin.xml
@@ -11,7 +11,7 @@
             	<modelProvider factoryClass="org.eclipse.jst.jee.model.internal.Ejb3MergedModelProviderFactory"/>
 <!--	<modelProvider factoryClass="org.eclipse.jst.jee.model.internal.Ejb3ModelProviderFactory"/>-->		
 
-      		<facet id="jst.ejb" versions="3.0,3.1,3.2"/>
+      		<facet id="jst.ejb" versions="3.0,3.1,3.2,4.0"/>
       	</provider>
    </extension>      
    <extension
diff --git a/plugins/org.eclipse.jst.jee.ejb/pom.xml b/plugins/org.eclipse.jst.jee.ejb/pom.xml
index 0718bc4..cfc456c 100644
--- a/plugins/org.eclipse.jst.jee.ejb/pom.xml
+++ b/plugins/org.eclipse.jst.jee.ejb/pom.xml
@@ -21,6 +21,6 @@
 
   <groupId>org.eclipse.webtools.ejb</groupId>
   <artifactId>org.eclipse.jst.jee.ejb</artifactId>
-  <version>1.0.500-SNAPSHOT</version>
+  <version>1.0.501-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 </project>
diff --git a/plugins/org.eclipse.jst.jee.ui/plugin.xml b/plugins/org.eclipse.jst.jee.ui/plugin.xml
index 079c68a..ec720d7 100644
--- a/plugins/org.eclipse.jst.jee.ui/plugin.xml
+++ b/plugins/org.eclipse.jst.jee.ui/plugin.xml
@@ -575,6 +575,11 @@
                        property="org.eclipse.wst.common.project.facet.core.projectFacet"
                        value="jst.ejb:3.2">
                  </test>
+                  <test
+                       forcePluginActivation="true"
+                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
+                       value="jst.ejb:4.0">
+                 </test>
               </or>
            </adapt>
 			<instanceof value="org.eclipse.jst.jee.ui.internal.navigator.AbstractDDNode" />
@@ -822,6 +827,11 @@
                        property="org.eclipse.wst.common.project.facet.core.projectFacet"
                        value="jst.web:5.0">
                  </test>
+                 <test
+                       forcePluginActivation="true"
+                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
+                       value="jst.web:6.0">
+                 </test>
               </or>
            </adapt>
    <instanceof
@@ -1023,6 +1033,11 @@
                     property="org.eclipse.wst.common.project.facet.core.projectFacet"
                     value="jst.ear:8.0">
                 </test>
+                 <test
+                    forcePluginActivation="true"
+                    property="org.eclipse.wst.common.project.facet.core.projectFacet"
+                    value="jst.ear:10.0">
+                </test>
               </or>
            </adapt>
            <instanceof
@@ -1303,6 +1318,11 @@
                     property="org.eclipse.wst.common.project.facet.core.projectFacet"
                     value="jst.appclient:8.0">
               </test>
+               <test
+                    forcePluginActivation="true"
+                    property="org.eclipse.wst.common.project.facet.core.projectFacet"
+                    value="jst.appclient:10.0">
+              </test>
               </or>
            </adapt>
            <instanceof
@@ -1367,6 +1387,11 @@
                        property="org.eclipse.wst.common.project.facet.core.projectFacet"
                        value="jst.connector:1.7">
                  </test>
+                  <test
+                       forcePluginActivation="true"
+                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
+                       value="jst.connector:2.1">
+                 </test>
               </or>
            </adapt>
            <instanceof
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/Ejb3LabelProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/Ejb3LabelProvider.java
index f0882f2..19b3ee4 100644
--- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/Ejb3LabelProvider.java
+++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/Ejb3LabelProvider.java
@@ -50,6 +50,7 @@
 	private Image ejb30Image;
 	private Image ejb31Image;
 	private Image ejb32Image;
+	private Image ejb40Image;
 	private Image sessionBeanImage;
 	private Image mdbImage;
 	private Image cmpImage;
@@ -57,6 +58,7 @@
 	private Image resourceRefImage;
 	private Image serviceRefImage;
 	private Image activationConfigImage;
+   
 
 	public Ejb3LabelProvider() {
 		new J2EEAdapterFactoryLabelProvider(new DynamicAdapterFactory(IJ2EENavigatorConstants.VIEWER_ID));
@@ -76,7 +78,9 @@
 				return getEjb31Image();
 			} else if (J2EEVersionConstants.VERSION_3_2_TEXT.equals(version)) {
 				return getEjb32Image();
-			}
+			} else if (J2EEVersionConstants.VERSION_4_0_TEXT.equals(version)) {
+                return getEjb40Image();
+            }
 			return getEjb30Image();
 		} else if(element instanceof AbstractDDNode) {
 			return ((AbstractDDNode) element).getImage();
@@ -166,6 +170,13 @@
 		return ejb32Image;
 	}
 	
+	private Image getEjb40Image() {
+        if (ejb40Image == null) {
+            ejb40Image = JEEUIPlugin.getDefault().getImageDescriptor(JEEUIPluginIcons.IMG_EJBEE10MODEL).createImage();
+        }
+        return ejb40Image;
+    }
+	
 	private Image getSessionBeanImage() {
 		if (sessionBeanImage == null) {
 			URL url = (URL) J2EEPlugin.getPlugin().getImage("sessionBean_obj"); //$NON-NLS-1$
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/appclient/GroupAppClientProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/appclient/GroupAppClientProvider.java
index 849ad29..a10b419 100644
--- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/appclient/GroupAppClientProvider.java
+++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/appclient/GroupAppClientProvider.java
@@ -50,6 +50,7 @@
 	private Image appClient60Image;
 	private Image appClient70Image;
 	private Image appClient80Image;
+	private Image appClient100Image;
 	
 	private IFile ddFile;
 
@@ -92,7 +93,10 @@
 			return getAppClient70Image();
 		} else if (J2EEVersionConstants.VERSION_8_TEXT.equals(version)) {
 			return getAppClient80Image();
-		}
+        } else if (J2EEVersionConstants.VERSION_10_TEXT.equals(version)) {
+	        return getAppClient100Image();
+	    }
+
 		return getAppClient50Image();
 	}
 	
@@ -143,4 +147,12 @@
 		}
 		return appClient80Image;
 	}
+	
+	private Image getAppClient100Image() {
+        if (appClient100Image == null) {
+            appClient100Image = JEEUIPlugin.getDefault().getImageDescriptor(JEEUIPluginIcons.APP_CLIENT100).createImage();
+        }
+        return appClient100Image;
+    }
+	
 }
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ear/GroupEARProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ear/GroupEARProvider.java
index 8ab03cf..ead4444 100644
--- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ear/GroupEARProvider.java
+++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ear/GroupEARProvider.java
@@ -48,6 +48,7 @@
 	private static Image ear60Image;
 	private static Image ear70Image;
 	private static Image ear80Image;
+	private static Image ear100Image;
 	private EARVirtualComponent earComponent;
 	private IFile ddFile;
 	
@@ -85,7 +86,8 @@
 					(facetedProject.hasProjectFacet(earFacet.getVersion(J2EEVersionConstants.VERSION_5_0_TEXT)) 
 					|| facetedProject.hasProjectFacet(earFacet.getVersion(J2EEVersionConstants.VERSION_6_0_TEXT))
 					|| facetedProject.hasProjectFacet(earFacet.getVersion(J2EEVersionConstants.VERSION_7_0_TEXT))
-					|| facetedProject.hasProjectFacet(earFacet.getVersion(J2EEVersionConstants.VERSION_8_0_TEXT)))) {
+					|| facetedProject.hasProjectFacet(earFacet.getVersion(J2EEVersionConstants.VERSION_8_0_TEXT))
+					        || facetedProject.hasProjectFacet(earFacet.getVersion(J2EEVersionConstants.VERSION_10_0_TEXT)))) {
 
 				if (bundledLibsNode == null) {
 					BundledNode bundledLibsDirectoryNode = new BundledNode(project, Messages.LIBRARY_DIRECTORY + ": " + EarUtilities.getEARLibDir(earComponent), null);//$NON-NLS-1$
@@ -120,7 +122,9 @@
 			return getEar70Image();
 		} else if (J2EEVersionConstants.VERSION_8_TEXT.equals(version)) {
 			return getEar80Image();
-		}
+		}else if (J2EEVersionConstants.VERSION_10_TEXT.equals(version)) {
+            return getEar100Image();
+        }
 		return getEar50Image();
 	}
 
@@ -167,4 +171,11 @@
 		}
 		return ear80Image;
 	}
+	
+	private Image getEar100Image() {
+        if (ear100Image == null) {
+            ear100Image = JEEUIPlugin.getDefault().getImageDescriptor(JEEUIPluginIcons.EAR10_IMAGE).createImage();
+        }
+        return ear100Image;
+    }
 }
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ra/RaGroupContentProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ra/RaGroupContentProvider.java
index 50c3714..e6dc6a6 100644
--- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ra/RaGroupContentProvider.java
+++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ra/RaGroupContentProvider.java
@@ -29,6 +29,7 @@
 	private IProject project;

 	private Image CONNECTOR_IMAGE;

 	private Image CONNECTOR_17_IMAGE;

+	private Image CONNECTOR_21_IMAGE;

 

 	public RaGroupContentProvider(JavaEEObject javaee, IProject project) {

 		super(javaee);

@@ -54,7 +55,10 @@
 			retVal = getConnector16Image();

 		} else if (J2EEVersionConstants.VERSION_1_7_TEXT.equals(version)) {

 			retVal = getConnector17Image();

-		} 

+		} else if (J2EEVersionConstants.VERSION_2_1_TEXT.equals(version)) {

+	        retVal = getConnector21Image();

+	    } 

+ 

 		return retVal;

 	}

 	

@@ -77,4 +81,12 @@
 		}

 		return CONNECTOR_17_IMAGE;

 	}

+	

+	private Image getConnector21Image() {

+        if (CONNECTOR_21_IMAGE == null) {

+            CONNECTOR_21_IMAGE = JEEUIPlugin.getDefault().getImage(JEEUIPluginIcons.IMG_EE10CONNECTOR);

+        }

+        return CONNECTOR_21_IMAGE;

+    }

+	

 }
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/WebAppProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/WebAppProvider.java
index 0433aee..5e12b04 100644
--- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/WebAppProvider.java
+++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/WebAppProvider.java
@@ -58,6 +58,7 @@
 	private Image web31Image;
 	private Image web40Image;
 	private Image web50Image;
+	private Image web60Image;
 	
 	private IProject prjct = null;
 	private IFile ddFile = null;
@@ -112,7 +113,9 @@
 			return getWeb40Image();
 		} else if (J2EEVersionConstants.VERSION_5_0_TEXT.equals(version)) {
 			return getWeb50Image();
-		}
+		} else if (J2EEVersionConstants.VERSION_6_0_TEXT.equals(version)) {
+            return getWeb60Image();
+        }
 		return getWeb25Image();
 	}
 
@@ -178,4 +181,11 @@
 		}
 		return web50Image;
 	}
+	
+	private Image getWeb60Image() {
+        if (web60Image == null) {
+            web60Image = JEEUIPlugin.getDefault().getImageDescriptor(JEEUIPluginIcons.IMG_WEBEE10MODEL).createImage();
+        }
+        return web60Image;
+    }
 }
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/plugin/JEEUIPluginIcons.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/plugin/JEEUIPluginIcons.java
index 3493f49..bf80b06 100644
--- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/plugin/JEEUIPluginIcons.java
+++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/plugin/JEEUIPluginIcons.java
@@ -16,13 +16,16 @@
 	public static String IMG_EJBEEMODEL = "30_ejbjar_obj"; //$NON-NLS-1$
 	public static String IMG_EJBEE6MODEL = "31_ejbjar_obj"; //$NON-NLS-1$
 	public static String IMG_EJBEE7MODEL = "32_ejbjar_obj"; //$NON-NLS-1$
+	public static String IMG_EJBEE10MODEL = "32_ejbjar_obj"; //$NON-NLS-1$
 	public static String IMG_WEBEEMODEL = "webapp_25"; //$NON-NLS-1$
 	public static String IMG_WEBEE6MODEL = "webapp_30"; //$NON-NLS-1$
 	public static String IMG_WEBEE7MODEL = "webapp_31"; //$NON-NLS-1$
 	public static String IMG_WEBEE8MODEL = "webapp_40"; //$NON-NLS-1$
 	public static String IMG_WEBEE9MODEL = "webapp_50"; //$NON-NLS-1$
+	public static String IMG_WEBEE10MODEL = "webapp_50"; //$NON-NLS-1$
 	public static String IMG_CONNECTOR = "connection"; //$NON-NLS-1$
 	public static String IMG_EE7CONNECTOR = "connector_17"; //$NON-NLS-1$
+	public static String IMG_EE10CONNECTOR = "connector_17"; //$NON-NLS-1$
 	public static String IMG_CONFIG_PROP = "config_prop_obj"; //$NON-NLS-1$
 	public static String IMG_LICENSE = "license_obj"; //$NON-NLS-1$
 	public static String IMG_RESOURCE_ADAPTER = "resource_adapter_obj"; //$NON-NLS-1$
@@ -48,9 +51,11 @@
 	public static String EAR6_IMAGE = "ear_60"; //$NON-NLS-1$
 	public static String EAR7_IMAGE = "ear_70"; //$NON-NLS-1$
 	public static String EAR8_IMAGE = "ear_80"; //$NON-NLS-1$
+	public static String EAR10_IMAGE = "ear_80"; //$NON-NLS-1$
 	public static String APP_CLIENT50 = "appclient_50"; //$NON-NLS-1$
 	public static String APP_CLIENT60 = "appclient_60"; //$NON-NLS-1$
 	public static String APP_CLIENT70 = "appclient_70"; //$NON-NLS-1$
 	public static String APP_CLIENT80 = "appclient_80"; //$NON-NLS-1$
+	public static String APP_CLIENT100 = "appclient_80"; //$NON-NLS-1$
 
 }
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.jee.web/web/org/eclipse/jst/jee/model/internal/Web25ModelProvider.java b/plugins/org.eclipse.jst.jee.web/web/org/eclipse/jst/jee/model/internal/Web25ModelProvider.java
index d5b0fe6..66e444b 100644
--- a/plugins/org.eclipse.jst.jee.web/web/org/eclipse/jst/jee/model/internal/Web25ModelProvider.java
+++ b/plugins/org.eclipse.jst.jee.web/web/org/eclipse/jst/jee/model/internal/Web25ModelProvider.java
@@ -89,8 +89,8 @@
 			war.setVersion(WebAppVersionType._40);
 		}
 		else { //if (J2EEVersionConstants.VERSION_5_0_TEXT.equals(version)) {
-			dd.getXMLNSPrefixMap().put("", J2EEConstants.JAKARTAEE9_NS_URL);  //$NON-NLS-1$
-			dd.getXSISchemaLocation().put(J2EEConstants.JAKARTAEE9_NS_URL, J2EEConstants.WEB_APP_SCHEMA_LOC_6_0);
+			dd.getXMLNSPrefixMap().put("", J2EEConstants.JAKARTAEE10_NS_URL);  //$NON-NLS-1$
+			dd.getXSISchemaLocation().put(J2EEConstants.JAKARTAEE10_NS_URL, J2EEConstants.WEB_APP_SCHEMA_LOC_6_0);
 			// note that later EMF generations remove the _LITERAL from the enum
 			war.setVersion(WebAppVersionType._60);
 		}
diff --git a/plugins/org.eclipse.jst.jee.web/web/org/eclipse/jst/jee/model/internal/WebFragment30ModelProvider.java b/plugins/org.eclipse.jst.jee.web/web/org/eclipse/jst/jee/model/internal/WebFragment30ModelProvider.java
index c454fc8..f3c3c30 100644
--- a/plugins/org.eclipse.jst.jee.web/web/org/eclipse/jst/jee/model/internal/WebFragment30ModelProvider.java
+++ b/plugins/org.eclipse.jst.jee.web/web/org/eclipse/jst/jee/model/internal/WebFragment30ModelProvider.java
@@ -73,6 +73,18 @@
 			// note that later EMF generations remove the _LITERAL from the enum
 			webFragment.setVersion(WebAppVersionType._31);
 		}
+	    else if (version != null && version.equals(J2EEVersionConstants.VERSION_5_0_TEXT)) {
+            dd.getXMLNSPrefixMap().put("", J2EEConstants.JAKARTAEE9_NS_URL);  //$NON-NLS-1$
+            dd.getXSISchemaLocation().put(J2EEConstants.JAKARTAEE9_NS_URL, J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_5_0);
+            // note that later EMF generations remove the _LITERAL from the enum
+            webFragment.setVersion(WebAppVersionType._50);
+        }
+	    else if (version != null && version.equals(J2EEVersionConstants.VERSION_6_0_TEXT)) {
+            dd.getXMLNSPrefixMap().put("", J2EEConstants.JAKARTAEE10_NS_URL);  //$NON-NLS-1$
+            dd.getXSISchemaLocation().put(J2EEConstants.JAKARTAEE10_NS_URL, J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_6_0);
+            // note that later EMF generations remove the _LITERAL from the enum
+            webFragment.setVersion(WebAppVersionType._60);
+        }		
 		else
 		{
 			dd.getXMLNSPrefixMap().put("", J2EEConstants.JAVAEE7_NS_URL);  //$NON-NLS-1$
diff --git a/plugins/org.eclipse.jst.jee/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.jee/META-INF/MANIFEST.MF
index be3eec9..a8f8abc 100644
--- a/plugins/org.eclipse.jst.jee/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.jst.jee/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %Bundle-Name.0
 Bundle-SymbolicName: org.eclipse.jst.jee;singleton:=true
-Bundle-Version: 1.0.1100.qualifier
+Bundle-Version: 1.0.1101.qualifier
 Bundle-Activator: org.eclipse.jst.jee.JEEPlugin
 Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.2.0,4.0.0)",
  org.eclipse.wst.common.project.facet.core;bundle-version="[1.3.0,2.0.0)",
diff --git a/plugins/org.eclipse.jst.jee/earproject/org/eclipse/jst/jee/project/facet/EarFacetInstallDelegate.java b/plugins/org.eclipse.jst.jee/earproject/org/eclipse/jst/jee/project/facet/EarFacetInstallDelegate.java
index 9cb3eb3..59c5934 100644
--- a/plugins/org.eclipse.jst.jee/earproject/org/eclipse/jst/jee/project/facet/EarFacetInstallDelegate.java
+++ b/plugins/org.eclipse.jst.jee/earproject/org/eclipse/jst/jee/project/facet/EarFacetInstallDelegate.java
@@ -73,7 +73,7 @@
 				JEEPlugin.logError(e);
 			}
 			
-			if( fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_80 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_70 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_60 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_50) {
+			if(fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_100 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_80 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_70 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_60 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_50) {
 				if(model.getBooleanProperty(IJ2EEFacetInstallDataModelProperties.GENERATE_DD)){
 					// Create the deployment descriptor (web.xml) if one doesn't exist
 					IFile appXmlFile = earroot.getUnderlyingFolder().getFile(new Path(J2EEConstants.APPLICATION_DD_URI));
@@ -84,7 +84,10 @@
 								((IFolder)appXmlFile.getParent()).create(true, true, monitor);
 							}
 							String appXmlContents = null;
-							if(fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_80) {
+	                        if(fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_80) {
+                                appXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<application id=\"Application_ID\" version=\"10\" xmlns=\"https://jakarta.ee/xml/ns/jakartaee\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/application_10.xsd\">\n <display-name>" + XMLWriter.getEscaped(project.getName()) +  "</display-name> \n </application> "; //$NON-NLS-1$ //$NON-NLS-2$
+                            }
+							else if(fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_80) {
 								appXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<application id=\"Application_ID\" version=\"8\" xmlns=\"http://xmlns.jcp.org/xml/ns/javaee\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/application_8.xsd\">\n <display-name>" + XMLWriter.getEscaped(project.getName()) +  "</display-name> \n </application> "; //$NON-NLS-1$ //$NON-NLS-2$
 							}
 							else if(fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_70) {
diff --git a/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/contenttype/JEE10ContentDescriber.java b/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/contenttype/JEE10ContentDescriber.java
new file mode 100644
index 0000000..9151b8b
--- /dev/null
+++ b/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/contenttype/JEE10ContentDescriber.java
@@ -0,0 +1,81 @@
+/*******************************************************************************

+ * Copyright (c) 2001, 2021 IBM Corporation and others.

+ * All rights reserved. This program and the accompanying materials

+ * are made available under the terms of the Eclipse Public License v1.0

+ * which accompanies this distribution, and is available at

+ * https://www.eclipse.org/legal/epl-2.0/

+ *

+ * Contributors:

+ * IBM Corporation - initial API and implementation

+ *******************************************************************************/

+package org.eclipse.jst.jee.contenttype;

+

+import java.io.IOException;

+import java.io.InputStream;

+

+import org.eclipse.core.runtime.QualifiedName;

+import org.eclipse.core.runtime.content.IContentDescriber;

+import org.eclipse.core.runtime.content.IContentDescription;

+import org.eclipse.jst.jee.util.internal.JavaEEQuickPeek;

+

+/**

+ * A content describer for detecting a jakarta ee module

+ */

+public final class JEE10ContentDescriber implements IContentDescriber {

+	public JEE10ContentDescriber() {

+		super();

+	}

+

+	public final static QualifiedName JEEVERSION = new QualifiedName("jee-version", "10.0"); //$NON-NLS-1$ //$NON-NLS-2$

+

+	public int describe(InputStream contents, IContentDescription description) throws IOException {

+

+		JavaEEQuickPeek quickPeek = new JavaEEQuickPeek(contents);

+		switch (quickPeek.getType()) {

+		case JavaEEQuickPeek.APPLICATION_CLIENT_TYPE:

+			switch (quickPeek.getVersion()) {

+			case JavaEEQuickPeek.JEE_10_0_ID:

+				return VALID;

+			}

+			return INVALID;

+		case JavaEEQuickPeek.APPLICATION_TYPE:

+			switch (quickPeek.getVersion()) {

+			case JavaEEQuickPeek.JEE_10_0_ID:

+				return VALID;

+			}

+			return INVALID;

+		case JavaEEQuickPeek.EJB_TYPE:

+			switch (quickPeek.getVersion()) {

+			case JavaEEQuickPeek.EJB_4_0_ID:

+				return VALID;

+			}

+			return INVALID;

+		case JavaEEQuickPeek.WEB_TYPE:

+			switch (quickPeek.getVersion()) {

+			case JavaEEQuickPeek.WEB_6_0_ID:

+				return VALID;

+			}

+			return INVALID;

+		case JavaEEQuickPeek.WEBFRAGMENT_TYPE:

+			switch (quickPeek.getVersion()) {

+			case JavaEEQuickPeek.WEBFRAGMENT_6_0_ID:

+				return VALID;

+			}

+			return INVALID;

+		case JavaEEQuickPeek.CONNECTOR_TYPE:

+			switch (quickPeek.getVersion()) {

+			case JavaEEQuickPeek.JCA_2_1_ID:

+				return VALID;

+			}

+			return INVALID;

+		}

+

+		return INVALID;

+	}

+

+	public QualifiedName[] getSupportedOptions() {

+

+		return new QualifiedName[] { JEEVERSION };

+	}

+

+}

diff --git a/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/model/internal/AppClient5ModelProvider.java b/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/model/internal/AppClient5ModelProvider.java
index 18dd20e..e1b4210 100644
--- a/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/model/internal/AppClient5ModelProvider.java
+++ b/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/model/internal/AppClient5ModelProvider.java
@@ -73,6 +73,11 @@
 			dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE7_NS_URL, J2EEConstants.APP_CLIENT_SCHEMA_LOC_7);
 			client.setVersion(J2EEVersionConstants.VERSION_7_TEXT);
 		}
+		else if(version != null && version.equals(J2EEVersionConstants.VERSION_10_0_TEXT)) {
+            dd.getXMLNSPrefixMap().put("", J2EEConstants.JAKARTAEE10_NS_URL);  //$NON-NLS-1$
+            dd.getXSISchemaLocation().put(J2EEConstants.JAKARTAEE10_NS_URL, J2EEConstants.APP_CLIENT_SCHEMA_LOC_10);
+            client.setVersion(J2EEVersionConstants.VERSION_10_TEXT);
+        }
 		else {
 			dd.getXMLNSPrefixMap().put("", J2EEConstants.JAVAEE7_NS_URL);  //$NON-NLS-1$
 			dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE7_NS_URL, J2EEConstants.APP_CLIENT_SCHEMA_LOC_8);
diff --git a/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/model/internal/Connector16ModelProvider.java b/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/model/internal/Connector16ModelProvider.java
index 1db4ef8..a7ba261 100644
--- a/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/model/internal/Connector16ModelProvider.java
+++ b/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/model/internal/Connector16ModelProvider.java
@@ -65,6 +65,10 @@
 			dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE_NS_URL, J2EEConstants.CONNECTOR_SCHEMA_LOC_1_6);
 			connector.setVersion(J2EEVersionConstants.VERSION_1_6_TEXT);
 		}
+		else if(version != null && version.equals(J2EEVersionConstants.VERSION_2_1_TEXT)) {
+            dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE_NS_URL, J2EEConstants.CONNECTOR_SCHEMA_LOC_2_1);
+            connector.setVersion(J2EEVersionConstants.VERSION_2_1_TEXT);
+        }
 		else 
 		{
 			// default to 1.7 for now
diff --git a/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/model/internal/EAR5ModelProvider.java b/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/model/internal/EAR5ModelProvider.java
index bf53059..bda9df8 100644
--- a/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/model/internal/EAR5ModelProvider.java
+++ b/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/model/internal/EAR5ModelProvider.java
@@ -109,7 +109,11 @@
 			dd.getXMLNSPrefixMap().put("", J2EEConstants.JAVAEE7_NS_URL);  //$NON-NLS-1$
 			dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE7_NS_URL, J2EEConstants.APPLICATION_SCHEMA_LOC_7);
 			ear.setVersion(J2EEVersionConstants.VERSION_7_TEXT);
-		} else {
+		} else if(version != null && version.equals(J2EEVersionConstants.VERSION_10_0_TEXT)){
+            dd.getXMLNSPrefixMap().put("", J2EEConstants.JAKARTAEE10_NS_URL);  //$NON-NLS-1$
+            dd.getXSISchemaLocation().put(J2EEConstants.JAKARTAEE10_NS_URL, J2EEConstants.APPLICATION_SCHEMA_LOC_10);
+            ear.setVersion(J2EEVersionConstants.VERSION_10_TEXT);
+        } else {
 			dd.getXMLNSPrefixMap().put("", J2EEConstants.JAVAEE7_NS_URL);  //$NON-NLS-1$
 			dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE7_NS_URL, J2EEConstants.APPLICATION_SCHEMA_LOC_8);
 			ear.setVersion(J2EEVersionConstants.VERSION_8_TEXT);
diff --git a/plugins/org.eclipse.jst.jee/plugin.properties b/plugins/org.eclipse.jst.jee/plugin.properties
index f4cdd5f..bbde925 100644
--- a/plugins/org.eclipse.jst.jee/plugin.properties
+++ b/plugins/org.eclipse.jst.jee/plugin.properties
@@ -34,3 +34,9 @@
 ee8earContentType=Java EE 8 EAR Content
 ee8appclientContentType=Java EE 8 Application Client Content
 ee9webContentType=Jakarta EE 9 Web Content
+ee10connectorContentType=Jakarta EE 10 Connector Content
+ee10ejbContentType=Jakarta EE 10 EJB Content
+ee10webContentType=Jakarta EE 10 Web Content
+ee10webfragmentContentType=Jakarta EE 10 Web Fragment Content
+ee10earContentType=Jakarta EE 10 EAR Content
+ee10appclientContentType=Jakarta EE 10 Application Client Content
diff --git a/plugins/org.eclipse.jst.jee/plugin.xml b/plugins/org.eclipse.jst.jee/plugin.xml
index 5cd00cb..0047029 100644
--- a/plugins/org.eclipse.jst.jee/plugin.xml
+++ b/plugins/org.eclipse.jst.jee/plugin.xml
@@ -182,6 +182,54 @@
               contentTypeId="org.eclipse.jst.jee.ee8webfragmentDD">
         </contentTypeBinding>
      </resourceFactory>     
+     <resourceFactory
+           class="org.eclipse.jst.javaee.jca.internal.util.JcaResourceFactoryImpl"
+           isDefault="false"
+           shortSegment="ra.xml">
+        <contentTypeBinding
+              contentTypeId="org.eclipse.jst.jee.ee10connectorDD">
+        </contentTypeBinding>
+     </resourceFactory>
+     <resourceFactory
+           class="org.eclipse.jst.javaee.web.internal.util.WebResourceFactoryImpl"
+           isDefault="false"
+           shortSegment="web.xml">
+        <contentTypeBinding
+              contentTypeId="org.eclipse.jst.jee.ee10webDD">
+        </contentTypeBinding>
+     </resourceFactory>
+     <resourceFactory
+           class="org.eclipse.jst.javaee.ejb.internal.util.EjbResourceFactoryImpl"
+           isDefault="false"
+           shortSegment="ejb-jar.xml">
+        <contentTypeBinding
+              contentTypeId="org.eclipse.jst.jee.ee10ejbDD">
+        </contentTypeBinding>
+     </resourceFactory>
+     <resourceFactory
+           class="org.eclipse.jst.javaee.applicationclient.internal.util.ApplicationclientResourceFactoryImpl"
+           isDefault="false"
+           shortSegment="application-client.xml">
+        <contentTypeBinding
+              contentTypeId="org.eclipse.jst.jee.ee10appclientDD">
+        </contentTypeBinding>
+     </resourceFactory>
+     <resourceFactory
+           class="org.eclipse.jst.javaee.application.internal.util.ApplicationResourceFactoryImpl"
+           isDefault="false"
+           shortSegment="application.xml">
+        <contentTypeBinding
+              contentTypeId="org.eclipse.jst.jee.ee10earDD">
+        </contentTypeBinding>
+     </resourceFactory>
+     <resourceFactory
+           class="org.eclipse.jst.javaee.webfragment.internal.util.WebfragmentResourceFactoryImpl"
+           isDefault="false"
+           shortSegment="web-fragment.xml">
+        <contentTypeBinding
+              contentTypeId="org.eclipse.jst.jee.ee10webfragmentDD">
+        </contentTypeBinding>
+     </resourceFactory>          
   </extension>
   
   <extension
@@ -249,23 +297,23 @@
             id="org.eclipse.jst.jee.server">
          <moduleType
                types="jst.ear"
-               versions="8.0,7.0,6.0,5.0">
+               versions="10.0,8.0,7.0,6.0,5.0">
          </moduleType>
          <moduleType
                types="jst.appclient"
-               versions="8.0,7.0,6.0,5.0,1.2,1.3,1.4">
+               versions="10.0,8.0,7.0,6.0,5.0,1.2,1.3,1.4">
          </moduleType>
          <moduleType
                types="jst.web"
-               versions="5.0,4.0,3.1,3.0,2.5,2.4,2.3,2.2">
+               versions="6.0,5.0,4.0,3.1,3.0,2.5,2.4,2.3,2.2">
          </moduleType>
          <moduleType
                types="jst.ejb"
-               versions="3.2,3.1,3.0,1.1,2.0,2.1">
+               versions="4.0,3.2,3.1,3.0,1.1,2.0,2.1">
          </moduleType>
          <moduleType
                types="jst.connector"
-               versions="1.7,1.6,1.5,1.0">
+               versions="2.1,1.7,1.6,1.5,1.0">
          </moduleType>
          <moduleType
                types="jst.utility"
@@ -273,7 +321,7 @@
          </moduleType>
          <moduleType
                types="jst.webfragment"
-               versions="5.0,4.0,3.1,3.0">
+               versions="6.0,5.0,4.0,3.1,3.0">
          </moduleType> 
          <enablement>
 			<or>
@@ -282,7 +330,7 @@
 		  		<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.utility:1.0]"/>
 	  			<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.connector:1.7]"/>
 	  			<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.web:5.0]"/>
-	  			<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.ear:[5.0-8.0]"/>
+	  			<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.ear:[5.0-10.0]"/>
 	  			<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.webfragment:5.0]"/>
 			</or>
 		</enablement>        
@@ -610,12 +658,99 @@
          </describer>
       </content-type>
   	</extension> 
+
+  	<extension
+         point="org.eclipse.core.contenttype.contentTypes">
+      <content-type
+            file-names="ejb-jar.xml"
+            id="ee10ejbDD"
+            base-type="org.eclipse.core.runtime.xml"
+            name="%ee10ejbContentType"
+            priority="high">
+         <describer
+               class="org.eclipse.jst.jee.contenttype.JEE10ContentDescriber">
+         </describer>
+      </content-type>
+  	</extension>
+  	
+  	<extension
+         point="org.eclipse.core.contenttype.contentTypes">
+      <content-type
+            file-names="web.xml"
+            id="ee10webDD"
+            base-type="org.eclipse.core.runtime.xml"
+            name="%ee10webContentType"
+            priority="high">
+         <describer
+               class="org.eclipse.jst.jee.contenttype.JEE10ContentDescriber">
+         </describer>
+      </content-type>
+  	</extension> 
+  	
+  	<extension
+         point="org.eclipse.core.contenttype.contentTypes">
+      <content-type
+            file-names="web-fragment.xml"
+            id="ee10webfragmentDD"
+            base-type="org.eclipse.core.runtime.xml"
+            name="%ee10webfragmentContentType"
+            priority="high">
+         <describer
+               class="org.eclipse.jst.jee.contenttype.JEE10ContentDescriber">
+         </describer>
+      </content-type>
+  	</extension>
+  	  	   	
+ 	<extension
+         point="org.eclipse.core.contenttype.contentTypes">
+      <content-type
+            file-names="application.xml"
+            id="ee10earDD"
+            base-type="org.eclipse.core.runtime.xml"
+            name="%ee10earContentType"
+            priority="high">
+         <describer
+               class="org.eclipse.jst.jee.contenttype.JEE10ContentDescriber">
+         </describer>
+      </content-type>
+  	</extension>
+  	
+  	<extension
+         point="org.eclipse.core.contenttype.contentTypes">
+      <content-type
+            file-names="application-client.xml"
+            id="ee10appclientDD"
+            base-type="org.eclipse.core.runtime.xml"
+            name="%ee10appclientContentType"
+            priority="high">
+         <describer
+               class="org.eclipse.jst.jee.contenttype.JEE10ContentDescriber">
+         </describer>
+      </content-type>
+  	</extension>
+ 
+  	 <extension
+         point="org.eclipse.core.contenttype.contentTypes">
+      <content-type
+            file-names="ra.xml"
+            id="ee10connectorDD"
+            base-type="org.eclipse.core.runtime.xml"
+            name="%ee10connectorContentType"
+            priority="high">
+         <describer
+               class="org.eclipse.jst.jee.contenttype.JEE10ContentDescriber">
+         </describer>
+      </content-type>
+  	</extension>
+  
+
+
   	
   	<extension
         point="org.eclipse.jst.j2ee.J2EEModelProvider">
       	<provider>
         	<modelProvider factoryClass="org.eclipse.jst.jee.model.internal.EAR5ModelProviderFactory"/>	
-      		<facet id="jst.ear" versions="5.0,6.0,7.0,8.0"/>
+      		<facet id="jst.ear" versions="5.0,6.0,7.0,8.0,10.0"/>
       	</provider>
   </extension> 
 
@@ -623,7 +758,7 @@
         point="org.eclipse.jst.j2ee.J2EEModelProvider">
       	<provider>
         	<modelProvider factoryClass="org.eclipse.jst.jee.model.internal.AppClient5ModelProviderFactory"/>	
-      		<facet id="jst.appclient" versions="5.0,6.0,7.0,8.0"/>
+      		<facet id="jst.appclient" versions="5.0,6.0,7.0,8.0,10.0"/>
       	</provider>
    </extension>
 
@@ -631,7 +766,7 @@
         point="org.eclipse.jst.j2ee.J2EEModelProvider">
       	<provider>
         	<modelProvider factoryClass="org.eclipse.jst.jee.model.internal.Connector16ModelProviderFactory"/>
-      		<facet id="jst.connector" versions="1.6,1.7"/>
+      		<facet id="jst.connector" versions="1.6,1.7,2.1"/>
       	</provider>
    </extension>
 
diff --git a/plugins/org.eclipse.jst.jee/pom.xml b/plugins/org.eclipse.jst.jee/pom.xml
index be9d74e..ce56d03 100644
--- a/plugins/org.eclipse.jst.jee/pom.xml
+++ b/plugins/org.eclipse.jst.jee/pom.xml
@@ -21,6 +21,6 @@
 
   <groupId>org.eclipse.webtools.javaee</groupId>
   <artifactId>org.eclipse.jst.jee</artifactId>
-  <version>1.0.1100-SNAPSHOT</version>
+  <version>1.0.1101-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 </project>
diff --git a/tests/org.eclipse.jst.j2ee.core.tests/commonArchiveResources/loose_module_workspace/.metadata/.plugins/com.ibm.etools.j2ee/looseApp.xmi b/tests/org.eclipse.jst.j2ee.core.tests/commonArchiveResources/loose_module_workspace/.metadata/.plugins/com.ibm.etools.j2ee/looseApp.xmi
deleted file mode 100644
index 1e3ae0b..0000000
--- a/tests/org.eclipse.jst.j2ee.core.tests/commonArchiveResources/loose_module_workspace/.metadata/.plugins/com.ibm.etools.j2ee/looseApp.xmi
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>

-<org.eclipse.jst.j2ee.internal.commonarchivecore.looseconfig:LooseApplication xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:org.eclipse.jst.j2ee.internal.commonarchivecore.looseconfig="commonarchive.looseconfig.xmi" uri="\d:\work\WTP\org.eclipse.jst.j2ee.core.tests\commonArchiveResources\loose_module_workspace\LooseEAR" binariesPath="\d:\work\WTP\org.eclipse.jst.j2ee.core.tests\commonArchiveResources\loose_module_workspace\LooseEAR" resourcesPath="\d:\work\WTP\org.eclipse.jst.j2ee.core.tests\commonArchiveResources\loose_module_workspace\LooseEAR">

-  <looseArchives xsi:type="org.eclipse.jst.j2ee.internal.commonarchivecore.looseconfig:LooseModule" uri="LooseEAREjb.jar" binariesPath="/d:/work/WTP/org.eclipse.jst.j2ee.core.tests/commonArchiveResources\loose_module_workspace\LooseEAREjb\bin" resourcesPath="/d:/work/WTP/org.eclipse.jst.j2ee.core.tests/commonArchiveResources\loose_module_workspace\LooseEAREjb\bin"/>

-  <looseArchives xsi:type="org.eclipse.jst.j2ee.internal.commonarchivecore.looseconfig:LooseWARFile" uri="LooseEARWeb.war" binariesPath="/d:/work/WTP/org.eclipse.jst.j2ee.core.tests/commonArchiveResources\loose_module_workspace\LooseEARWeb\webApplication" resourcesPath="/d:/work/WTP/org.eclipse.jst.j2ee.core.tests/commonArchiveResources\loose_module_workspace\LooseEARWeb\webApplication">

-    <looseLibs uri="WEB-INF/lib/library.jar" binariesPath="/d:/work/WTP/org.eclipse.jst.j2ee.core.tests/commonArchiveResources\loose_module_workspace\LooseJavaWebLib\bin" resourcesPath="/d:/work/WTP/org.eclipse.jst.j2ee.core.tests/commonArchiveResources\loose_module_workspace\LooseJavaWebLib\bin"/>

-  </looseArchives>

-  <looseArchives xsi:type="org.eclipse.jst.j2ee.internal.commonarchivecore.looseconfig:LooseLibrary" uri="util.jar" binariesPath="/d:/work/WTP/org.eclipse.jst.j2ee.core.tests/commonArchiveResources\loose_module_workspace\LooseJavaUtil\bin" resourcesPath="/d:/work/WTP/org.eclipse.jst.j2ee.core.tests/commonArchiveResources\loose_module_workspace\LooseJavaUtil\bin"/>

-</org.eclipse.jst.j2ee.internal.commonarchivecore.looseconfig:LooseApplication>

diff --git a/tests/org.eclipse.jst.j2ee.core.tests/commonArchiveResources/loose_module_workspace/.metadata/.plugins/com.ibm.etools.j2ee/looseConfig.xmi b/tests/org.eclipse.jst.j2ee.core.tests/commonArchiveResources/loose_module_workspace/.metadata/.plugins/com.ibm.etools.j2ee/looseConfig.xmi
deleted file mode 100644
index 64ffaf7..0000000
--- a/tests/org.eclipse.jst.j2ee.core.tests/commonArchiveResources/loose_module_workspace/.metadata/.plugins/com.ibm.etools.j2ee/looseConfig.xmi
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>

-<org.eclipse.jst.j2ee.internal.commonarchivecore.looseconfig:LooseConfiguration xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:org.eclipse.jst.j2ee.internal.commonarchivecore.looseconfig="commonarchive.looseconfig.xmi">

-  <applications uri="\d:\work\WTP\org.eclipse.jst.j2ee.core.tests\commonArchiveResources\loose_module_workspace\LooseEAR" binariesPath="\d:\work\WTP\org.eclipse.jst.j2ee.core.tests\commonArchiveResources\loose_module_workspace\LooseEAR" resourcesPath="\d:\work\WTP\org.eclipse.jst.j2ee.core.tests\commonArchiveResources\loose_module_workspace\LooseEAR">

-    <looseArchives xsi:type="org.eclipse.jst.j2ee.internal.commonarchivecore.looseconfig:LooseModule" uri="LooseEAREjb.jar" binariesPath="/d:/work/WTP/org.eclipse.jst.j2ee.core.tests/commonArchiveResources\loose_module_workspace\LooseEAREjb\bin" resourcesPath="/d:/work/WTP/org.eclipse.jst.j2ee.core.tests/commonArchiveResources\loose_module_workspace\LooseEAREjb\bin"/>

-    <looseArchives xsi:type="org.eclipse.jst.j2ee.internal.commonarchivecore.looseconfig:LooseWARFile" uri="LooseEARWeb.war" binariesPath="/d:/work/WTP/org.eclipse.jst.j2ee.core.tests/commonArchiveResources\loose_module_workspace\LooseEARWeb\webApplication" resourcesPath="/d:/work/WTP/org.eclipse.jst.j2ee.core.tests/commonArchiveResources\loose_module_workspace\LooseEARWeb\webApplication">

-      <looseLibs uri="WEB-INF/lib/library.jar" binariesPath="/d:/work/WTP/org.eclipse.jst.j2ee.core.tests/commonArchiveResources\loose_module_workspace\LooseJavaWebLib\bin" resourcesPath="/d:/work/WTP/org.eclipse.jst.j2ee.core.tests/commonArchiveResources\loose_module_workspace\LooseJavaWebLib\bin"/>

-    </looseArchives>

-    <looseArchives xsi:type="org.eclipse.jst.j2ee.internal.commonarchivecore.looseconfig:LooseLibrary" uri="util.jar" binariesPath="/d:/work/WTP/org.eclipse.jst.j2ee.core.tests/commonArchiveResources\loose_module_workspace\LooseJavaUtil\bin" resourcesPath="/d:/work/WTP/org.eclipse.jst.j2ee.core.tests/commonArchiveResources\loose_module_workspace\LooseJavaUtil\bin"/>

-  </applications>

-</org.eclipse.jst.j2ee.internal.commonarchivecore.looseconfig:LooseConfiguration>