[518383] Add basic Java EE 8 support to WTP Java EE Tools
This patch adds basic Java EE 8 support to the Java EE Tools component.
Allows for Dynamic Web 4.0, EAR 8.0, App Client 8.0, etc, projects to be
created and for their respective deployment descriptor files to be
generated and updated.
Signed-off-by: John Collier <John.J.Collier@ibm.com>
diff --git a/plugins/org.eclipse.jst.j2ee.core/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.j2ee.core/META-INF/MANIFEST.MF
index 64e0928..ee854c8 100644
--- a/plugins/org.eclipse.jst.j2ee.core/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.jst.j2ee.core/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %Bundle-Name.0
Bundle-SymbolicName: org.eclipse.jst.j2ee.core; singleton:=true
-Bundle-Version: 1.3.300.qualifier
+Bundle-Version: 1.4.0.qualifier
Bundle-Activator: org.eclipse.jst.j2ee.core.internal.plugin.J2EECorePlugin
Bundle-Vendor: %Bundle-Vendor.0
Bundle-Localization: plugin
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 914c480..66b0664 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
@@ -181,6 +181,8 @@
version = J2EEVersionConstants.JEE_6_0_ID;
} else if (schemaName.indexOf(J2EEConstants.APP_CLIENT_SCHEMA_7)!= -1) {
version = J2EEVersionConstants.JEE_7_0_ID;
+ } else if (schemaName.indexOf(J2EEConstants.APP_CLIENT_SCHEMA_8) != -1) {
+ version = J2EEVersionConstants.JEE_8_0_ID;
}
}
break;
@@ -202,6 +204,8 @@
version = J2EEVersionConstants.JEE_6_0_ID;
} else if (schemaName.indexOf(J2EEConstants.APPLICATION_SCHEMA_7) != -1){
version = J2EEVersionConstants.JEE_7_0_ID;
+ } else if (schemaName.indexOf(J2EEConstants.APPLICATION_SCHEMA_8) != -1) {
+ version = J2EEVersionConstants.JEE_8_0_ID;
}
}
break;
@@ -255,6 +259,8 @@
version = J2EEVersionConstants.WEB_3_0_ID;
} else if (schemaName.indexOf(J2EEConstants.WEBAPP_SCHEMA_3_1) != -1) {
version = J2EEVersionConstants.WEB_3_1_ID;
+ } else if (schemaName.indexOf(J2EEConstants.WEBAPP_SCHEMA_4_0) != -1) {
+ version = J2EEVersionConstants.WEB_4_0_ID;
}
}
break;
@@ -281,6 +287,8 @@
version = J2EEVersionConstants.WEBFRAGMENT_3_0_ID;
} else if (schemaName.indexOf(J2EEConstants.WEBFRAGMENT_SCHEMA_3_1) != -1) {
version = J2EEVersionConstants.WEBFRAGMENT_3_1_ID;
+ } else if (schemaName.indexOf(J2EEConstants.WEBFRAGMENT_SCHEMA_4_0) != -1) {
+ version = J2EEVersionConstants.WEBFRAGMENT_4_0_ID;
}
}
break;
@@ -369,6 +377,9 @@
case J2EEVersionConstants.WEB_3_1_ID:
javaEEVersion = J2EEVersionConstants.JEE_7_0_ID;
break;
+ case J2EEVersionConstants.WEB_4_0_ID:
+ javaEEVersion = J2EEVersionConstants.JEE_8_0_ID;
+ break;
}
break;
case WEBSERVICES_TYPE:
@@ -399,6 +410,9 @@
case J2EEVersionConstants.WEBFRAGMENT_3_1_ID:
javaEEVersion = J2EEVersionConstants.JEE_7_0_ID;
break;
+ case J2EEVersionConstants.WEBFRAGMENT_4_0_ID:
+ javaEEVersion = J2EEVersionConstants.JEE_8_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 36ad836..a59d5cc 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
@@ -302,6 +302,8 @@
version = J2EEVersionConstants.JEE_6_0_ID;
} else if (versionAttr.equals(J2EEVersionConstants.VERSION_7_0_TEXT)) {
version = J2EEVersionConstants.JEE_7_0_ID;
+ } else if (versionAttr.equals(J2EEVersionConstants.VERSION_8_0_TEXT)) {
+ version = J2EEVersionConstants.JEE_8_0_ID;
}
} else if (isEJBJarFile(fileURI)) {
if (null == versionAttr) {
@@ -334,7 +336,9 @@
version = J2EEVersionConstants.JEE_6_0_ID;
} else if (versionAttr.equals(J2EEVersionConstants.VERSION_7_0_TEXT)) {
version = J2EEVersionConstants.JEE_7_0_ID;
- }
+ } else if (versionAttr.equals(J2EEVersionConstants.VERSION_8_0_TEXT)) {
+ version = J2EEVersionConstants.JEE_8_0_ID;
+ }
} else if (isWARFile(fileURI)) {
if (null == versionAttr) {
version = J2EEVersionConstants.WEB_2_4_ID;
@@ -350,6 +354,8 @@
version = J2EEVersionConstants.WEB_3_0_ID;
} else if (versionAttr.equals(J2EEVersionConstants.VERSION_3_1_TEXT)) {
version = J2EEVersionConstants.WEB_3_1_ID;
+ } else if (versionAttr.equals(J2EEVersionConstants.VERSION_4_0_TEXT)) {
+ version = J2EEVersionConstants.WEB_4_0_ID;
}
} else if (isRARFile(fileURI)) {
if (null == versionAttr) {
@@ -371,7 +377,9 @@
private static int lookupVersion(String fileURI, String schemaName) {
int version = -1;
if (isEARFile(fileURI)) {
- if (schemaName.equals(J2EEConstants.APPLICATION_SCHEMA_7)) {
+ if (schemaName.equals(J2EEConstants.APPLICATION_SCHEMA_8)) {
+ version = J2EEVersionConstants.JEE_8_0_ID;
+ } else if (schemaName.equals(J2EEConstants.APPLICATION_SCHEMA_7)) {
version = J2EEVersionConstants.JEE_7_0_ID;
} else if (schemaName.equals(J2EEConstants.APPLICATION_SCHEMA_6)) {
version = J2EEVersionConstants.JEE_6_0_ID;
@@ -391,7 +399,9 @@
version = J2EEVersionConstants.EJB_2_1_ID;
}
} else if (isApplicationClientFile(fileURI)) {
- if (schemaName.equals(J2EEConstants.APP_CLIENT_SCHEMA_7)) {
+ if (schemaName.equals(J2EEConstants.APP_CLIENT_SCHEMA_8)) {
+ version = J2EEVersionConstants.JEE_8_0_ID;
+ } else if (schemaName.equals(J2EEConstants.APP_CLIENT_SCHEMA_7)) {
version = J2EEVersionConstants.JEE_7_0_ID;
} else if (schemaName.equals(J2EEConstants.APP_CLIENT_SCHEMA_6)) {
version = J2EEVersionConstants.JEE_6_0_ID;
@@ -401,7 +411,9 @@
version = J2EEVersionConstants.J2EE_1_4_ID;
}
} else if (isWARFile(fileURI)) {
- if (schemaName.equals(J2EEConstants.WEBAPP_SCHEMA_3_1)) {
+ if (schemaName.equals(J2EEConstants.WEBAPP_SCHEMA_4_0)) {
+ version = J2EEVersionConstants.WEB_4_0_ID;
+ } else if (schemaName.equals(J2EEConstants.WEBAPP_SCHEMA_3_1)) {
version = J2EEVersionConstants.WEB_3_1_ID;
} else if (schemaName.equals(J2EEConstants.WEBAPP_SCHEMA_3_0)) {
version = J2EEVersionConstants.WEB_3_0_ID;
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 e65ec61..75288d7 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
@@ -103,11 +103,14 @@
uri = J2EEConstants.APPLICATION_SCHEMA_LOC_6;
javaeeUri = J2EEConstants.JAVAEE_NS_URL;
}
- else
- {
+ else if(J2EEVersionConstants.VERSION_7_TEXT.equals(version)) {
uri = J2EEConstants.APPLICATION_SCHEMA_LOC_7;
javaeeUri = J2EEConstants.JAVAEE7_NS_URL;
}
+ else {
+ uri = J2EEConstants.APPLICATION_SCHEMA_LOC_8;
+ javaeeUri = J2EEConstants.JAVAEE7_NS_URL;
+ }
// release the resource to make sure there is no memory leak
resource = null;
}
@@ -126,11 +129,14 @@
uri = J2EEConstants.APP_CLIENT_SCHEMA_LOC_6;
javaeeUri = J2EEConstants.JAVAEE_NS_URL;
}
- else
- {
+ else if (J2EEVersionConstants.VERSION_7_TEXT.equals(version)) {
uri = J2EEConstants.APP_CLIENT_SCHEMA_LOC_7;
javaeeUri = J2EEConstants.JAVAEE7_NS_URL;
}
+ else {
+ uri = J2EEConstants.APP_CLIENT_SCHEMA_LOC_8;
+ javaeeUri = J2EEConstants.JAVAEE7_NS_URL;
+ }
// release the resource to make sure there is no memory leak
resource = null;
}
@@ -192,11 +198,14 @@
uri = J2EEConstants.WEB_APP_SCHEMA_LOC_3_0;
javaeeUri = J2EEConstants.JAVAEE_NS_URL;
}
- else
- {
+ else if(J2EEVersionConstants.VERSION_3_1_TEXT.equals(version)) {
uri = J2EEConstants.WEB_APP_SCHEMA_LOC_3_1;
javaeeUri = J2EEConstants.JAVAEE7_NS_URL;
}
+ else {
+ uri = J2EEConstants.WEB_APP_SCHEMA_LOC_4_0;
+ javaeeUri = J2EEConstants.JAVAEE7_NS_URL;
+ }
// release the resource to make sure there is no memory leak
resource = null;
}
@@ -212,9 +221,13 @@
uri = J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_3_0;
javaeeUri = J2EEConstants.JAVAEE_NS_URL;
}
+ else if(J2EEVersionConstants.VERSION_3_1_TEXT.equals(version)) {
+ uri = J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_3_1;
+ javaeeUri = J2EEConstants.JAVAEE7_NS_URL;
+ }
else
{
- uri = J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_3_1;
+ uri = J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_4_0;
javaeeUri = J2EEConstants.JAVAEE7_NS_URL;
}
// release the resource to make sure there is no memory leak
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 43f93f6..e7df7fa 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
@@ -216,6 +216,7 @@
@Override
public void setJ2EEVersionID(int id) {
switch (id) {
+ case (JEE_8_0_ID) :
case (JEE_7_0_ID) :
primSetDoctypeValues(null, null);
primSetVersionID(EJB_3_2_ID);
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 6de2f6d..45cd9f1 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
@@ -86,6 +86,7 @@
public int VERSION_1_5 = 15;
public int VERSION_1_6 = 16;
public int VERSION_1_7 = 17;
+ public int VERSION_1_8 = 18;
public int VERSION_2_0 = 20;
public int VERSION_2_1 = 21;
public int VERSION_2_2 = 22;
@@ -109,6 +110,7 @@
public String VERSION_1_5_TEXT = "1.5"; //$NON-NLS-1$
public String VERSION_1_6_TEXT = "1.6"; //$NON-NLS-1$
public String VERSION_1_7_TEXT = "1.7"; //$NON-NLS-1$
+ public String VERSION_1_8_TEXT = "1.8"; //$NON-NLS-1$
public String VERSION_2_0_TEXT = "2.0"; //$NON-NLS-1$
public String VERSION_2_1_TEXT = "2.1"; //$NON-NLS-1$
public String VERSION_2_2_TEXT = "2.2"; //$NON-NLS-1$
@@ -126,5 +128,6 @@
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$
}
diff --git a/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/webservice/wsdd/internal/impl/WsddResourceImpl.java b/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/webservice/wsdd/internal/impl/WsddResourceImpl.java
index 7625df4..624d7c6 100644
--- a/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/webservice/wsdd/internal/impl/WsddResourceImpl.java
+++ b/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/webservice/wsdd/internal/impl/WsddResourceImpl.java
@@ -143,6 +143,7 @@
public void setJ2EEVersionID(int id)
{
switch (id) {
+ case (JEE_8_0_ID) :
case (JEE_7_0_ID) :
primSetDoctypeValues(null, null);
primSetVersionID(WebServiceConstants.WEBSERVICE_1_4_ID);
diff --git a/plugins/org.eclipse.jst.j2ee.core/pom.xml b/plugins/org.eclipse.jst.j2ee.core/pom.xml
index ee9b37d..306955d 100644
--- a/plugins/org.eclipse.jst.j2ee.core/pom.xml
+++ b/plugins/org.eclipse.jst.j2ee.core/pom.xml
@@ -22,6 +22,6 @@
<groupId>org.eclipse.webtools.javaee</groupId>
<artifactId>org.eclipse.jst.j2ee.core</artifactId>
- <version>1.3.300-SNAPSHOT</version>
+ <version>1.4.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/org.eclipse.jst.j2ee.ui/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.j2ee.ui/META-INF/MANIFEST.MF
index 19c46a8..f68e3dd 100644
--- a/plugins/org.eclipse.jst.j2ee.ui/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.jst.j2ee.ui/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %Bundle-Name.0
Bundle-SymbolicName: org.eclipse.jst.j2ee.ui; singleton:=true
-Bundle-Version: 1.1.920.qualifier
+Bundle-Version: 1.1.930.qualifier
Bundle-Activator: org.eclipse.jst.j2ee.internal.plugin.J2EEUIPlugin
Bundle-Vendor: %Bundle-Vendor.0
Bundle-Localization: plugin
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 28012f9..92e7f50 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
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
+ * Copyright (c) 2005, 2017 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
@@ -53,8 +53,10 @@
}
else {
facets.add( primaryFacetVersion );
-
- if( primaryFacetVersion == IJ2EEFacetConstants.APPLICATION_CLIENT_70)
+ if (primaryFacetVersion == IJ2EEFacetConstants.APPLICATION_CLIENT_80) {
+ facets.add(JavaFacet.VERSION_1_8);
+ }
+ else if( primaryFacetVersion == IJ2EEFacetConstants.APPLICATION_CLIENT_70)
{
facets.add( JavaFacet.VERSION_1_7 );
}
diff --git a/plugins/org.eclipse.jst.j2ee.ui/pom.xml b/plugins/org.eclipse.jst.j2ee.ui/pom.xml
index f56bf90..b0d418e 100644
--- a/plugins/org.eclipse.jst.j2ee.ui/pom.xml
+++ b/plugins/org.eclipse.jst.j2ee.ui/pom.xml
@@ -22,6 +22,6 @@
<groupId>org.eclipse.webtools.javaee</groupId>
<artifactId>org.eclipse.jst.j2ee.ui</artifactId>
- <version>1.1.920-SNAPSHOT</version>
+ <version>1.1.930-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/org.eclipse.jst.j2ee.web/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.j2ee.web/META-INF/MANIFEST.MF
index 6466815..a468e16 100644
--- a/plugins/org.eclipse.jst.j2ee.web/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.jst.j2ee.web/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: Web Plug-in
Bundle-SymbolicName: org.eclipse.jst.j2ee.web; singleton:=true
-Bundle-Version: 1.1.900.qualifier
+Bundle-Version: 1.1.901.qualifier
Bundle-Activator: org.eclipse.jst.j2ee.internal.web.plugin.WebPlugin
Bundle-Vendor: Eclipse.org
Bundle-Localization: plugin
diff --git a/plugins/org.eclipse.jst.j2ee.web/plugin.xml b/plugins/org.eclipse.jst.j2ee.web/plugin.xml
index 4f20685..22217b1 100644
--- a/plugins/org.eclipse.jst.j2ee.web/plugin.xml
+++ b/plugins/org.eclipse.jst.j2ee.web/plugin.xml
@@ -449,6 +449,16 @@
</constraint>
<group-member id="modules"/>
</project-facet-version>
+
+ <project-facet-version facet="jst.web" version="4.0">
+ <constraint>
+ <and>
+ <requires facet="jst.java" version="[1.8"/>
+ <conflicts group="modules"/>
+ </and>
+ </constraint>
+ <group-member id="modules"/>
+ </project-facet-version>
<action facet="jst.web" type="INSTALL" id="jst.web.install">
<delegate class="org.eclipse.jst.j2ee.web.project.facet.WebFacetInstallDelegate"/>
@@ -495,8 +505,18 @@
</constraint>
<group-member id="modules"/>
</project-facet-version>
+
+ <project-facet-version facet="jst.webfragment" version="4.0">
+ <constraint>
+ <and>
+ <requires facet="jst.java" version="[1.8"/>
+ <conflicts group="modules"/>
+ </and>
+ </constraint>
+ <group-member id="modules"/>
+ </project-facet-version>
- <action facet="jst.webfragment" version="[3.0-3.1]" type="INSTALL" id="jst.webfragment.install">
+ <action facet="jst.webfragment" version="[3.0-4.0]" type="INSTALL" id="jst.webfragment.install">
<delegate class="org.eclipse.jst.j2ee.web.project.facet.WebFragmentFacetInstallDelegate"/>
<config-factory class="org.eclipse.jst.j2ee.web.project.facet.WebFragmentFacetInstallDataModelProvider"/>
</action>
@@ -505,7 +525,7 @@
<delegate class="org.eclipse.jst.j2ee.project.facet.J2EEFacetRuntimeChangedDelegate"/>
</event-handler>
- <event-handler type="POST_INSTALL" facet="jst.webfragment" version="[3.0-3.1]">
+ <event-handler type="POST_INSTALL" facet="jst.webfragment" version="[3.0-4.0]">
<delegate class="org.eclipse.jst.j2ee.web.project.facet.WebFragmentFacetPostInstallDelegate"/>
</event-handler>
diff --git a/plugins/org.eclipse.jst.j2ee.web/pom.xml b/plugins/org.eclipse.jst.j2ee.web/pom.xml
index 1e65c77..2b5fb53 100644
--- a/plugins/org.eclipse.jst.j2ee.web/pom.xml
+++ b/plugins/org.eclipse.jst.j2ee.web/pom.xml
@@ -22,6 +22,6 @@
<groupId>org.eclipse.webtools.javaee</groupId>
<artifactId>org.eclipse.jst.j2ee.web</artifactId>
- <version>1.1.900-SNAPSHOT</version>
+ <version>1.1.901-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
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 5dbc45f..6bb4e2b 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
@@ -106,7 +106,9 @@
else if(J2EEVersionConstants.VERSION_3_1_TEXT.equals(facetVersion)) {
return Boolean.valueOf(J2EEPlugin.getDefault().getJ2EEPreferences().getBoolean(J2EEPreferences.Keys.EE7_DYNAMIC_WEB_GENERATE_DD));
}
-
+ else if(J2EEVersionConstants.VERSION_4_0_TEXT.equals(facetVersion)) {
+ return Boolean.valueOf(J2EEPlugin.getDefault().getJ2EEPreferences().getBoolean(J2EEPreferences.Keys.EE8_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/WebFacetInstallDelegate.java b/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/web/project/facet/WebFacetInstallDelegate.java
index 1504302..067eda0 100644
--- a/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/web/project/facet/WebFacetInstallDelegate.java
+++ b/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/web/project/facet/WebFacetInstallDelegate.java
@@ -109,8 +109,13 @@
webroot.createLink(configFolderPath, 0, null);
J2EEModuleVirtualComponent.setDefaultDeploymentDescriptorFolder(webroot, configFolderPath, null);
}
-
- if( fv == WebFacetUtils.WEB_31 )
+ if( fv == WebFacetUtils.WEB_40 )
+ {
+ if(model.getBooleanProperty(IJ2EEFacetInstallDataModelProperties.GENERATE_DD)){
+ createWeb40DeploymentDescriptor(project, fv, webinfFolder, monitor);
+ }
+ }
+ else if( fv == WebFacetUtils.WEB_31 )
{
if(model.getBooleanProperty(IJ2EEFacetInstallDataModelProperties.GENERATE_DD)){
createWeb31DeploymentDescriptor(project, fv, webinfFolder, monitor);
@@ -226,7 +231,23 @@
}
return pjpath.append(model.getStringProperty(IJ2EEModuleFacetInstallDataModelProperties.CONFIG_FOLDER));
}
-
+
+ private void createWeb40DeploymentDescriptor(final IProject project, final IProjectFacetVersion fv,
+ IFolder webinfFolder, IProgressMonitor monitor) throws CoreException {
+ // Create the deployment descriptor (web.xml) if one doesn't exist
+ IFile webxmlFile = webinfFolder.getFile("web.xml"); //$NON-NLS-1$
+ if (!webxmlFile.exists()) {
+ try {
+ // Create a minimal web.xml file, so the model can be initialized
+ final String webXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<web-app id=\"WebApp_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-app_4_0.xsd\">\n</web-app>"; //$NON-NLS-1$
+ webxmlFile.create(new ByteArrayInputStream(webXmlContents.getBytes("UTF-8")), true, monitor); //$NON-NLS-1$
+
+ populateDefaultContent(project, fv);
+ } catch (UnsupportedEncodingException e) {
+ WebPlugin.logError(e);
+ }
+ }
+ }
private void createWeb31DeploymentDescriptor(final IProject project, final IProjectFacetVersion fv,
IFolder webinfFolder, IProgressMonitor monitor) throws CoreException {
// Create the deployment descriptor (web.xml) if one doesn't exist
diff --git a/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/web/project/facet/WebFacetUtils.java b/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/web/project/facet/WebFacetUtils.java
index 076d595..4105a7e 100644
--- a/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/web/project/facet/WebFacetUtils.java
+++ b/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/web/project/facet/WebFacetUtils.java
@@ -25,8 +25,10 @@
public static final IProjectFacetVersion WEB_25 = WEB_FACET.getVersion("2.5"); //$NON-NLS-1$
public static final IProjectFacetVersion WEB_30 = WEB_FACET.getVersion("3.0"); //$NON-NLS-1$
public static final IProjectFacetVersion WEB_31 = WEB_FACET.getVersion("3.1"); //$NON-NLS-1$
+ public static final IProjectFacetVersion WEB_40 = WEB_FACET.getVersion("4.0"); //$NON-NLS-1$
public static final IProjectFacetVersion WEBFRAGMENT_30 = WEBFRAGMENT_FACET.getVersion("3.0"); //$NON-NLS-1$
public static final IProjectFacetVersion WEBFRAGMENT_31 = WEBFRAGMENT_FACET.getVersion("3.1"); //$NON-NLS-1$
+ public static final IProjectFacetVersion WEBFRAGMENT_40 = WEBFRAGMENT_FACET.getVersion("4.0"); //$NON-NLS-1$
public static final IProjectFacet WEB_XDOCLET_FACET = getWebDocletFacet();
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 cb885f6..b0b7056 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,12 +126,13 @@
final String webFragXmlContents;
- if( fv == IJ2EEFacetConstants.WEBFRAGMENT_31 )
- {
+ 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 ) {
webFragXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<web-fragment id=\"WebFragment_ID\" version=\"3.1\" 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_3_1.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
- {
+ }
+ else {
webFragXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<web-fragment id=\"WebFragment_ID\" version=\"3.0\" 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/web-fragment_3_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$
}
diff --git a/plugins/org.eclipse.jst.j2ee/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.j2ee/META-INF/MANIFEST.MF
index 81d8241..4cb277f 100644
--- a/plugins/org.eclipse.jst.j2ee/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.jst.j2ee/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %Bundle-Name.0
Bundle-SymbolicName: org.eclipse.jst.j2ee; singleton:=true
-Bundle-Version: 1.2.101.qualifier
+Bundle-Version: 1.2.200.qualifier
Bundle-Activator: org.eclipse.jst.j2ee.internal.plugin.J2EEPlugin
Bundle-Vendor: %Bundle-Vendor.0
Bundle-Localization: plugin
diff --git a/plugins/org.eclipse.jst.j2ee/appclientcreation/org/eclipse/jst/j2ee/applicationclient/internal/creation/AppClientComponentImportDataModelProvider.java b/plugins/org.eclipse.jst.j2ee/appclientcreation/org/eclipse/jst/j2ee/applicationclient/internal/creation/AppClientComponentImportDataModelProvider.java
index 96e2357..8a3beb3 100644
--- a/plugins/org.eclipse.jst.j2ee/appclientcreation/org/eclipse/jst/j2ee/applicationclient/internal/creation/AppClientComponentImportDataModelProvider.java
+++ b/plugins/org.eclipse.jst.j2ee/appclientcreation/org/eclipse/jst/j2ee/applicationclient/internal/creation/AppClientComponentImportDataModelProvider.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2003, 2013 IBM Corporation and others.
+ * Copyright (c) 2003, 2017 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
@@ -43,8 +43,8 @@
@Override
protected void handleUnknownType(JavaEEQuickPeek jqp) {
jqp.setType(J2EEVersionConstants.APPLICATION_CLIENT_TYPE);
- jqp.setVersion(J2EEVersionConstants.JEE_7_0_ID);
- jqp.setJavaEEVersion(J2EEVersionConstants.JEE_7_0_ID);
+ jqp.setVersion(J2EEVersionConstants.JEE_8_0_ID);
+ jqp.setJavaEEVersion(J2EEVersionConstants.JEE_8_0_ID);
}
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 9ef330b..a2c5796 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
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2005, 2011 IBM Corporation and others.
+ * Copyright (c) 2005, 2017 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
@@ -115,7 +115,8 @@
IPath configFolderpath = pjpath.append(configFolderName);
sourceFolder = ws.getRoot().getFolder(configFolderpath);
- if( fv == IJ2EEFacetConstants.APPLICATION_CLIENT_70 ||
+ if( fv == IJ2EEFacetConstants.APPLICATION_CLIENT_80 ||
+ fv == IJ2EEFacetConstants.APPLICATION_CLIENT_70 ||
fv == IJ2EEFacetConstants.APPLICATION_CLIENT_60 ||
fv == IJ2EEFacetConstants.APPLICATION_CLIENT_50 )
{
@@ -129,10 +130,13 @@
((IFolder)appClientFile.getParent()).create(true, true, monitor);
}
String appClientXmlContents = null;
- if( fv == IJ2EEFacetConstants.APPLICATION_CLIENT_70) {
+ 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) {
appClientXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<application-client version=\"7\" 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_7.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_60) {
+ else if (fv == IJ2EEFacetConstants.APPLICATION_CLIENT_60) {
appClientXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<application-client version=\"6\" 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/application-client_6.xsd\">\n <display-name>" + XMLWriter.getEscaped(project.getName()) + "</display-name> \n </application-client>"; //$NON-NLS-1$ //$NON-NLS-2$
}
else {
diff --git a/plugins/org.eclipse.jst.j2ee/archiveops/org/eclipse/jst/j2ee/internal/archive/ArchiveWrapper.java b/plugins/org.eclipse.jst.j2ee/archiveops/org/eclipse/jst/j2ee/internal/archive/ArchiveWrapper.java
index d5df4dc..d13b510 100644
--- a/plugins/org.eclipse.jst.j2ee/archiveops/org/eclipse/jst/j2ee/internal/archive/ArchiveWrapper.java
+++ b/plugins/org.eclipse.jst.j2ee/archiveops/org/eclipse/jst/j2ee/internal/archive/ArchiveWrapper.java
@@ -140,7 +140,8 @@
if(archive.containsArchiveResource(new Path(J2EEConstants.APPLICATION_DD_URI))){
if(jqp.getJavaEEVersion() == JavaEEQuickPeek.JEE_5_0_ID ||
jqp.getJavaEEVersion() == JavaEEQuickPeek.JEE_6_0_ID ||
- jqp.getJavaEEVersion() == JavaEEQuickPeek.JEE_7_0_ID){
+ jqp.getJavaEEVersion() == JavaEEQuickPeek.JEE_7_0_ID ||
+ jqp.getJavaEEVersion() == JavaEEQuickPeek.JEE_8_0_ID){
try {
Application application = (Application) archive.getModelObject();
List modules = application.getModules();
@@ -182,7 +183,8 @@
cachedEARModules = new ArrayList<ArchiveWrapper>();
if(jqp.getJavaEEVersion() == JavaEEQuickPeek.JEE_5_0_ID ||
jqp.getJavaEEVersion() == JavaEEQuickPeek.JEE_6_0_ID ||
- jqp.getJavaEEVersion() == JavaEEQuickPeek.JEE_7_0_ID){
+ jqp.getJavaEEVersion() == JavaEEQuickPeek.JEE_7_0_ID ||
+ jqp.getJavaEEVersion() == JavaEEQuickPeek.JEE_8_0_ID){
List<IArchiveResource> resources = archive.getArchiveResources();
for (IArchiveResource resource : resources) {
if (resource.getType() != IArchiveResource.DIRECTORY_TYPE) {
@@ -288,7 +290,8 @@
JavaEEQuickPeek earJQP = JavaEEArchiveUtilities.INSTANCE.getJavaEEQuickPeek(earArchive);
if(earJQP.getJavaEEVersion() == JavaEEQuickPeek.JEE_5_0_ID ||
earJQP.getJavaEEVersion() == JavaEEQuickPeek.JEE_6_0_ID ||
- earJQP.getJavaEEVersion() == JavaEEQuickPeek.JEE_7_0_ID){
+ earJQP.getJavaEEVersion() == JavaEEQuickPeek.JEE_7_0_ID ||
+ earJQP.getJavaEEVersion() == JavaEEQuickPeek.JEE_8_0_ID){
try {
Application application = (Application) earArchive.getModelObject();
String moduleName = archive.getPath().toString();
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 58468fe..da3040c 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
@@ -195,6 +195,8 @@
version = J2EEVersionConstants.JEE_6_0_ID;
} else if (versionStr.equals(J2EEVersionConstants.VERSION_7_0_TEXT)) {
version = J2EEVersionConstants.JEE_7_0_ID;
+ } else if (versionStr.equals(J2EEVersionConstants.VERSION_8_0_TEXT)) {
+ version = J2EEVersionConstants.JEE_8_0_ID;
}
break;
case J2EEVersionConstants.CONNECTOR_TYPE:
@@ -234,6 +236,8 @@
version = J2EEVersionConstants.WEB_3_0_ID;
} else if (versionStr.equals(J2EEVersionConstants.VERSION_3_1_TEXT)) {
version = J2EEVersionConstants.WEB_3_1_ID;
+ } else if (versionStr.equals(J2EEVersionConstants.VERSION_4_0_TEXT)) {
+ version = J2EEVersionConstants.WEB_4_0_ID;
}
break;
}
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 45051bf..6ce3dee 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
@@ -44,6 +44,9 @@
case J2EEVersionConstants.SERVLET_3_1:
return J2EEVersionConstants.VERSION_3_1_TEXT;
+
+ case J2EEVersionConstants.SERVLET_4_0:
+ return J2EEVersionConstants.VERSION_4_0_TEXT;
}
return ""; //$NON-NLS-1$
@@ -113,6 +116,9 @@
case J2EEVersionConstants.JEE_7_0_ID:
return J2EEVersionConstants.VERSION_7_0_TEXT;
+
+ case J2EEVersionConstants.JEE_8_0_ID:
+ return J2EEVersionConstants.VERSION_8_0_TEXT;
}
return "";//$NON-NLS-1$
@@ -131,6 +137,8 @@
return J2EEVersionConstants.JEE_6_0_ID;
if (version.equals(J2EEVersionConstants.VERSION_7_0_TEXT))
return J2EEVersionConstants.JEE_7_0_ID;
+ if (version.equals(J2EEVersionConstants.VERSION_8_0_TEXT))
+ return J2EEVersionConstants.JEE_8_0_ID;
// default
return J2EEVersionConstants.JEE_5_0_ID;
}
@@ -165,6 +173,8 @@
return J2EEVersionConstants.JEE_6_0_ID;
if (version.equals(J2EEVersionConstants.VERSION_3_1_TEXT))
return J2EEVersionConstants.JEE_7_0_ID;
+ if (version.equals(J2EEVersionConstants.VERSION_4_0_TEXT))
+ return J2EEVersionConstants.JEE_8_0_ID;
// default
return J2EEVersionConstants.J2EE_1_4_ID;
}
@@ -197,6 +207,7 @@
case J2EEVersionConstants.JEE_6_0_ID:
return J2EEVersionConstants.EJB_3_1_ID;
case J2EEVersionConstants.JEE_7_0_ID:
+ case J2EEVersionConstants.JEE_8_0_ID:
return J2EEVersionConstants.EJB_3_2_ID;
}
// default
@@ -217,6 +228,8 @@
return J2EEVersionConstants.WEB_3_0_ID;
case J2EEVersionConstants.JEE_7_0_ID:
return J2EEVersionConstants.WEB_3_1_ID;
+ case J2EEVersionConstants.JEE_8_0_ID:
+ return J2EEVersionConstants.WEB_4_0_ID;
}
// default
return J2EEVersionConstants.WEB_3_0_ID;
@@ -232,6 +245,7 @@
case J2EEVersionConstants.JEE_6_0_ID:
return J2EEVersionConstants.JCA_1_6_ID;
case J2EEVersionConstants.JEE_7_0_ID:
+ case J2EEVersionConstants.JEE_8_0_ID:
return J2EEVersionConstants.JCA_1_7_ID;
}
// default
@@ -280,6 +294,9 @@
else if (J2EEVersionConstants.VERSION_1_7_TEXT.equals(version))
nVersion = J2EEVersionConstants.VERSION_1_7;
+ else if (J2EEVersionConstants.VERSION_1_8_TEXT.equals(version))
+ nVersion = J2EEVersionConstants.VERSION_1_8;
+
else if (J2EEVersionConstants.VERSION_2_0_TEXT.equals(version))
nVersion = J2EEVersionConstants.VERSION_2_0;
@@ -307,6 +324,9 @@
else if (J2EEVersionConstants.VERSION_3_2_TEXT.equals(version))
nVersion = J2EEVersionConstants.VERSION_3_2;
+ else if (J2EEVersionConstants.VERSION_4_0_TEXT.equals(version))
+ nVersion = J2EEVersionConstants.VERSION_4_0;
+
else if (J2EEVersionConstants.VERSION_5_0_TEXT.equals(version))
nVersion = J2EEVersionConstants.VERSION_5_0;
@@ -314,8 +334,11 @@
nVersion = J2EEVersionConstants.VERSION_6_0;
else if (J2EEVersionConstants.VERSION_7_0_TEXT.equals(version))
- nVersion = J2EEVersionConstants.VERSION_7_0;
-
+ nVersion = J2EEVersionConstants.VERSION_7_0;
+
+ else if (J2EEVersionConstants.VERSION_8_0_TEXT.equals(version))
+ nVersion = J2EEVersionConstants.VERSION_8_0;
+
return nVersion;
}
public static String convertVersionIntToString(int version) {
@@ -345,6 +368,9 @@
else if (version == J2EEVersionConstants.VERSION_1_7)
nVersion = J2EEVersionConstants.VERSION_1_7_TEXT;
+ else if (version == J2EEVersionConstants.VERSION_1_8)
+ nVersion = J2EEVersionConstants.VERSION_1_8_TEXT;
+
else if (version == J2EEVersionConstants.VERSION_2_0)
nVersion = J2EEVersionConstants.VERSION_2_0_TEXT;
@@ -371,7 +397,10 @@
else if (version == J2EEVersionConstants.VERSION_3_2)
nVersion = J2EEVersionConstants.VERSION_3_2_TEXT;
-
+
+ else if (version == J2EEVersionConstants.VERSION_4_0)
+ nVersion = J2EEVersionConstants.VERSION_4_0_TEXT;
+
else if (version == J2EEVersionConstants.VERSION_5_0)
nVersion = J2EEVersionConstants.VERSION_5_0_TEXT;
@@ -379,8 +408,11 @@
nVersion = J2EEVersionConstants.VERSION_6_0_TEXT;
else if (version == J2EEVersionConstants.VERSION_7_0)
- nVersion = J2EEVersionConstants.VERSION_7_0_TEXT;
-
+ nVersion = J2EEVersionConstants.VERSION_7_0_TEXT;
+
+ else if (version == J2EEVersionConstants.VERSION_8_0)
+ nVersion = J2EEVersionConstants.VERSION_8_0_TEXT;
+
return nVersion;
}
@@ -402,6 +434,9 @@
case J2EEVersionConstants.JEE_7_0_ID:
javaFacetVersion = JavaFacet.VERSION_1_7;
break;
+ case J2EEVersionConstants.JEE_8_0_ID:
+ javaFacetVersion = JavaFacet.VERSION_1_8;
+ break;
}
return javaFacetVersion;
diff --git a/plugins/org.eclipse.jst.j2ee/earproject/org/eclipse/jst/j2ee/application/internal/operations/AddComponentToEnterpriseApplicationOp.java b/plugins/org.eclipse.jst.j2ee/earproject/org/eclipse/jst/j2ee/application/internal/operations/AddComponentToEnterpriseApplicationOp.java
index 84959f2..7c5cddc 100644
--- a/plugins/org.eclipse.jst.j2ee/earproject/org/eclipse/jst/j2ee/application/internal/operations/AddComponentToEnterpriseApplicationOp.java
+++ b/plugins/org.eclipse.jst.j2ee/earproject/org/eclipse/jst/j2ee/application/internal/operations/AddComponentToEnterpriseApplicationOp.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
+ * Copyright (c) 2005, 2017 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
@@ -215,7 +215,10 @@
private void updateContextRoot(final IProject earpj, final IVirtualComponent wc,
ICommonModule mod) {
String earDDVersion = JavaEEProjectUtilities.getJ2EEDDProjectVersion(earpj);
- boolean useNewModel = earDDVersion.equals(J2EEVersionConstants.VERSION_5_0_TEXT) || earDDVersion.equals(J2EEVersionConstants.VERSION_6_0_TEXT) || earDDVersion.equals(J2EEVersionConstants.VERSION_7_0_TEXT);
+ boolean useNewModel = earDDVersion.equals(J2EEVersionConstants.VERSION_5_0_TEXT) ||
+ earDDVersion.equals(J2EEVersionConstants.VERSION_6_0_TEXT) ||
+ earDDVersion.equals(J2EEVersionConstants.VERSION_7_0_TEXT) ||
+ earDDVersion.equals(J2EEVersionConstants.VERSION_8_0_TEXT);
String contextroot = null;
if (wc.isBinary()) {
IPath path = wc.getAdapter(IPath.class);
@@ -248,7 +251,11 @@
final IProject earpj = ear.getProject();
String earDDVersion = JavaEEProjectUtilities.getJ2EEDDProjectVersion(earpj);
- boolean useNewModel = earDDVersion.equals(J2EEVersionConstants.VERSION_5_0_TEXT) || earDDVersion.equals(J2EEVersionConstants.VERSION_6_0_TEXT) || earDDVersion.equals(J2EEVersionConstants.VERSION_7_0_TEXT);
+ boolean useNewModel = earDDVersion.equals(J2EEVersionConstants.VERSION_5_0_TEXT) ||
+ earDDVersion.equals(J2EEVersionConstants.VERSION_6_0_TEXT) ||
+ earDDVersion.equals(J2EEVersionConstants.VERSION_7_0_TEXT) ||
+ earDDVersion.equals(J2EEVersionConstants.VERSION_8_0_TEXT);
+
if (wc.isBinary()){
//[Bug 299549] open and cache archive using the DISCRIMINATE_MAIN_CLASS
//option before attempting the JavaEEQuickPeek
diff --git a/plugins/org.eclipse.jst.j2ee/earproject/org/eclipse/jst/j2ee/application/internal/operations/EARComponentImportDataModelProvider.java b/plugins/org.eclipse.jst.j2ee/earproject/org/eclipse/jst/j2ee/application/internal/operations/EARComponentImportDataModelProvider.java
index a513476..4d3b8ba 100644
--- a/plugins/org.eclipse.jst.j2ee/earproject/org/eclipse/jst/j2ee/application/internal/operations/EARComponentImportDataModelProvider.java
+++ b/plugins/org.eclipse.jst.j2ee/earproject/org/eclipse/jst/j2ee/application/internal/operations/EARComponentImportDataModelProvider.java
@@ -703,7 +703,7 @@
@Override
protected void handleUnknownType(JavaEEQuickPeek jqp) {
jqp.setType(J2EEVersionConstants.APPLICATION_TYPE);
- jqp.setVersion(J2EEVersionConstants.JEE_7_0_ID);
- jqp.setJavaEEVersion(J2EEVersionConstants.JEE_7_0_ID);
+ jqp.setVersion(J2EEVersionConstants.JEE_8_0_ID);
+ jqp.setJavaEEVersion(J2EEVersionConstants.JEE_8_0_ID);
}
}
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 694a324..a355e65 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_7)){
+ 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;
} else if(runtime.supports(JavaFacet.VERSION_1_6)){
javaFacetVersion = JavaFacet.VERSION_1_6;
@@ -344,6 +346,8 @@
case J2EEVersionConstants.JEE_7_0_ID:
javaFacetVersion = JavaFacet.VERSION_1_7;
break;
+ case J2EEVersionConstants.JEE_8_0_ID:
+ javaFacetVersion = JavaFacet.VERSION_1_8;
}
}
if(javaFacetVersion != null){
@@ -425,54 +429,65 @@
}
int archiveType = jqp.getType();
String ddURI = null;
- IProjectFacetVersion [] highestProjectFacetVersion = new IProjectFacetVersion [3];
- int [] highestJQPVersion = new int[3];
+ IProjectFacetVersion [] highestProjectFacetVersion = new IProjectFacetVersion [4];
+ int [] highestJQPVersion = new int[4];
int EE6 = 0;
int EE5 = 1;
int EE7 = 2;
+ int EE8 = 3;
switch(archiveType){
case JavaEEQuickPeek.APPLICATION_TYPE:
ddURI = J2EEConstants.APPLICATION_DD_URI;
highestProjectFacetVersion[EE6] = IJ2EEFacetConstants.ENTERPRISE_APPLICATION_60;
highestProjectFacetVersion[EE5] = IJ2EEFacetConstants.ENTERPRISE_APPLICATION_50;
highestProjectFacetVersion[EE7] = IJ2EEFacetConstants.ENTERPRISE_APPLICATION_70;
+ highestProjectFacetVersion[EE8] = IJ2EEFacetConstants.ENTERPRISE_APPLICATION_80;
highestJQPVersion[EE6] = JavaEEQuickPeek.VERSION_6_0;
highestJQPVersion[EE5] = JavaEEQuickPeek.VERSION_5_0;
highestJQPVersion[EE7] = JavaEEQuickPeek.VERSION_7_0;
+ highestJQPVersion[EE8] = JavaEEQuickPeek.VERSION_8_0;
break;
case JavaEEQuickPeek.APPLICATION_CLIENT_TYPE:
ddURI = J2EEConstants.APP_CLIENT_DD_URI;
highestProjectFacetVersion[EE6] = IJ2EEFacetConstants.APPLICATION_CLIENT_60;
highestProjectFacetVersion[EE5] = IJ2EEFacetConstants.APPLICATION_CLIENT_50;
highestProjectFacetVersion[EE7] = IJ2EEFacetConstants.APPLICATION_CLIENT_70;
+ highestProjectFacetVersion[EE8] = IJ2EEFacetConstants.APPLICATION_CLIENT_80;
highestJQPVersion[EE6] = JavaEEQuickPeek.VERSION_6_0;
highestJQPVersion[EE5] = JavaEEQuickPeek.VERSION_5_0;
highestJQPVersion[EE7] = JavaEEQuickPeek.VERSION_7_0;
+ highestJQPVersion[EE8] = JavaEEQuickPeek.VERSION_8_0;
break;
case JavaEEQuickPeek.EJB_TYPE:
ddURI = J2EEConstants.EJBJAR_DD_URI;
highestProjectFacetVersion[EE6] = IJ2EEFacetConstants.EJB_31;
highestProjectFacetVersion[EE5] = IJ2EEFacetConstants.EJB_30;
highestProjectFacetVersion[EE7] = IJ2EEFacetConstants.EJB_32;
+ highestProjectFacetVersion[EE8] = IJ2EEFacetConstants.EJB_32;
highestJQPVersion[EE6] = JavaEEQuickPeek.VERSION_3_1;
highestJQPVersion[EE5] = JavaEEQuickPeek.VERSION_3_0;
highestJQPVersion[EE7] = JavaEEQuickPeek.VERSION_3_2;
+ highestJQPVersion[EE8] = JavaEEQuickPeek.VERSION_3_2;
break;
case JavaEEQuickPeek.WEB_TYPE:
ddURI = J2EEConstants.WEBAPP_DD_URI;
highestProjectFacetVersion[EE6] = IJ2EEFacetConstants.DYNAMIC_WEB_30;
highestProjectFacetVersion[EE5] = IJ2EEFacetConstants.DYNAMIC_WEB_25;
highestProjectFacetVersion[EE7] = IJ2EEFacetConstants.DYNAMIC_WEB_31;
+ highestProjectFacetVersion[EE8] = IJ2EEFacetConstants.DYNAMIC_WEB_40;
highestJQPVersion[EE6] = JavaEEQuickPeek.VERSION_3_0;
highestJQPVersion[EE5] = JavaEEQuickPeek.VERSION_2_5;
highestJQPVersion[EE7] = JavaEEQuickPeek.VERSION_3_1;
+ highestJQPVersion[EE8] = JavaEEQuickPeek.VERSION_4_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;
highestJQPVersion[EE6] = JavaEEQuickPeek.VERSION_1_6;
highestJQPVersion[EE7] = JavaEEQuickPeek.VERSION_1_7;
+ highestJQPVersion[EE8] = JavaEEQuickPeek.VERSION_1_7;
break;
default:
return jqp;
@@ -483,9 +498,9 @@
}
IRuntime runtime = (IRuntime)getProperty(IFacetProjectCreationDataModelProperties.FACET_RUNTIME);
- if(archiveType == JavaEEQuickPeek.CONNECTOR_TYPE || runtime == null || runtime.supports(highestProjectFacetVersion[EE7]) ){
- return new JavaEEQuickPeek(jqp.getType(), highestJQPVersion[EE7]);
- } if(runtime.supports(highestProjectFacetVersion[EE7]) ){
+ if(archiveType == JavaEEQuickPeek.CONNECTOR_TYPE || runtime == null || runtime.supports(highestProjectFacetVersion[EE8]) ){
+ return new JavaEEQuickPeek(jqp.getType(), highestJQPVersion[EE8]);
+ } 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 6ad972b..b6698f1 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_70 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_60 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_50) {
+ if( 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,10 @@
((IFolder)appXmlFile.getParent()).create(true, true, monitor);
}
String appXmlContents = null;
- if(fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_70) {
+ 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) {
appXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<application id=\"Application_ID\" version=\"7\" 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_7.xsd\">\n <display-name>" + XMLWriter.getEscaped(project.getName()) + "</display-name> \n </application> "; //$NON-NLS-1$ //$NON-NLS-2$
}
else if(fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_60) {
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 5f42ba9..b7965a3 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_8_0:
+ retVal.add(DYNAMIC_WEB_40);
+ //$FALL-THROUGH$
case J2EEVersionConstants.VERSION_7_0:
retVal.add(DYNAMIC_WEB_31);
//$FALL-THROUGH$
@@ -404,6 +407,7 @@
}
} else if (EJB.equals(moduleProjectFacetId)) {
switch (earVersion) {
+ case J2EEVersionConstants.VERSION_8_0:
case J2EEVersionConstants.VERSION_7_0:
retVal.add(EJB_32);
//$FALL-THROUGH$
@@ -424,6 +428,7 @@
}
} else if (JCA.equals(moduleProjectFacetId)) {
switch (earVersion) {
+ case J2EEVersionConstants.VERSION_8_0:
case J2EEVersionConstants.VERSION_7_0:
retVal.add(JCA_17);
case J2EEVersionConstants.VERSION_6_0:
@@ -440,6 +445,9 @@
}
} else if (APPLICATION_CLIENT.equals(moduleProjectFacetId)) {
switch (earVersion) {
+ case J2EEVersionConstants.VERSION_8_0:
+ retVal.add(APPLICATION_CLIENT_80);
+ //$FALL-THROUGH$
case J2EEVersionConstants.VERSION_7_0:
retVal.add(APPLICATION_CLIENT_70);
//$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 8d803a0..0776d81 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,13 +465,13 @@
private static int getLatestVersion(IProject project) {
if (isEARProject(project) || isApplicationClientProject(project))
- return J2EEVersionConstants.VERSION_7_0;
+ return J2EEVersionConstants.VERSION_8_0;
if (isEJBProject(project))
return J2EEVersionConstants.VERSION_3_2;
if (isDynamicWebProject(project))
- return J2EEVersionConstants.VERSION_3_1;
+ return J2EEVersionConstants.VERSION_4_0;
if (isWebFragmentProject(project))
- return J2EEVersionConstants.VERSION_3_1;
+ return J2EEVersionConstants.VERSION_4_0;
if (isJCAProject(project))
return J2EEVersionConstants.VERSION_1_7;
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 6a76123..949c8e4 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
@@ -26,6 +26,7 @@
public static final IProjectFacetVersion ENTERPRISE_APPLICATION_50 = J2EEFacetConstantsProvider.getProjectFacetVersion(ENTERPRISE_APPLICATION_FACET, "5.0"); //$NON-NLS-1$
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 String APPLICATION_CLIENT = IModuleConstants.JST_APPCLIENT_MODULE;
public IProjectFacet APPLICATION_CLIENT_FACET = J2EEFacetConstantsProvider.getProjectFacet(APPLICATION_CLIENT);
@@ -35,6 +36,7 @@
public static final IProjectFacetVersion APPLICATION_CLIENT_50 = J2EEFacetConstantsProvider.getProjectFacetVersion(APPLICATION_CLIENT_FACET, "5.0"); //$NON-NLS-1$
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 String EJB = IModuleConstants.JST_EJB_MODULE;
public IProjectFacet EJB_FACET = J2EEFacetConstantsProvider.getProjectFacet(EJB);
@@ -53,6 +55,7 @@
public static final IProjectFacetVersion DYNAMIC_WEB_25 = J2EEFacetConstantsProvider.getProjectFacetVersion(DYNAMIC_WEB_FACET, "2.5"); //$NON-NLS-1$
public static final IProjectFacetVersion DYNAMIC_WEB_30 = J2EEFacetConstantsProvider.getProjectFacetVersion(DYNAMIC_WEB_FACET, "3.0"); //$NON-NLS-1$
public static final IProjectFacetVersion DYNAMIC_WEB_31 = J2EEFacetConstantsProvider.getProjectFacetVersion(DYNAMIC_WEB_FACET, "3.1"); //$NON-NLS-1$
+ public static final IProjectFacetVersion DYNAMIC_WEB_40 = J2EEFacetConstantsProvider.getProjectFacetVersion(DYNAMIC_WEB_FACET, "4.0"); //$NON-NLS-1$
public static final String DYNAMIC_WEB_XDOCLET = "jst.web.xdoclet"; //$NON-NLS-1$
@@ -74,6 +77,7 @@
public static final IProjectFacet WEBFRAGMENT_FACET = J2EEFacetConstantsProvider.getProjectFacet(WEBFRAGMENT);
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$
/**
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 06b3c3b..9f2ac33 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
@@ -92,6 +92,10 @@
*/
static final String EE7_DYNAMIC_WEB_GENERATE_DD = "ee7_dynamic_web_generate_dd"; //$NON-NLS-1$
/**
+ * @since 3.9
+ */
+ static final String EE8_DYNAMIC_WEB_GENERATE_DD = "ee8_dynamic_web_generate_dd"; //$NON-NLS-1$
+ /**
* @since 2.0
*/
static final String EJB_GENERATE_DD = "ejb_generate_dd"; //$NON-NLS-1$
diff --git a/plugins/org.eclipse.jst.j2ee/plugin.xml b/plugins/org.eclipse.jst.j2ee/plugin.xml
index 20a7a62..d54bb7a 100644
--- a/plugins/org.eclipse.jst.j2ee/plugin.xml
+++ b/plugins/org.eclipse.jst.j2ee/plugin.xml
@@ -453,6 +453,16 @@
</constraint>
<group-member id="modules"/>
</project-facet-version>
+
+ <project-facet-version facet="jst.ear" version="8.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"/>
@@ -564,7 +574,17 @@
</constraint>
<group-member id="modules"/>
</project-facet-version>
-
+
+ <project-facet-version facet="jst.appclient" version="8.0">
+ <constraint>
+ <and>
+ <requires facet="jst.java" version="[1.8"/>
+ <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"/>
<config-factory class="org.eclipse.jst.j2ee.project.facet.AppClientFacetInstallDataModelProvider"/>
@@ -598,7 +618,7 @@
facet="jst.ear"
id="jst.ear.versionchange.legacy"
type="VERSION_CHANGE"
- version="[1.4-7.0]">
+ version="[1.4-8.0]">
<delegate
class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
</delegate>
@@ -608,7 +628,7 @@
facet="jst.ear"
id="jst.ear.versionchange.ee5"
type="VERSION_CHANGE"
- version="[5.0-7.0]">
+ version="[5.0-8.0]">
<delegate
class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
</delegate>
@@ -618,17 +638,27 @@
facet="jst.ear"
id="jst.ear.versionchange.ee6"
type="VERSION_CHANGE"
- version="[6.0-7.0]">
+ version="[6.0-8.0]">
<delegate
class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
</delegate>
<property name="from.versions" value="6.0"/>
</action>
<action
+ facet="jst.ear"
+ id="jst.ear.versionchange.ee7"
+ type="VERSION_CHANGE"
+ version="[7.0-8.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.legacy"
type="VERSION_CHANGE"
- version="[1.4-7.0]">
+ version="[1.4-8.0]">
<delegate
class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
</delegate>
@@ -638,7 +668,7 @@
facet="jst.appclient"
id="jst.appclient.versionchange.ee5"
type="VERSION_CHANGE"
- version="[5.0-7.0]">
+ version="[5.0-8.0]">
<delegate
class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
</delegate>
@@ -648,11 +678,21 @@
facet="jst.appclient"
id="jst.appclient.versionchange.ee6"
type="VERSION_CHANGE"
- version="[6.0-7.0]">
+ version="[6.0-8.0]">
<delegate
class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
</delegate>
- <property name="from.versions" value="6.0"/>
+ <property name="from.versions" value="6.0"/>
+ </action>
+ <action
+ facet="jst.appclient"
+ id="jst.appclient.versionchange.ee7"
+ type="VERSION_CHANGE"
+ version="[7.0-8.0]">
+ <delegate
+ class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
+ </delegate>
+ <property name="from.versions" value="7.0"/>
</action>
<action
facet="jst.ejb"
@@ -688,7 +728,7 @@
facet="jst.web"
id="jst.web.versionchange.legacy"
type="VERSION_CHANGE"
- version="[2.4-3.1]">
+ version="[2.4-4.0]">
<delegate
class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
</delegate>
@@ -698,7 +738,7 @@
facet="jst.web"
id="jst.web.versionchange.ee5"
type="VERSION_CHANGE"
- version="[2.5-3.1]">
+ version="[2.5-4.0]">
<delegate
class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
</delegate>
@@ -708,13 +748,23 @@
facet="jst.web"
id="jst.web.versionchange.ee6"
type="VERSION_CHANGE"
- version="[3.0-3.1]">
+ version="[3.0-4.0]">
<delegate
class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
</delegate>
<property name="from.versions" value="3.0"/>
</action>
<action
+ facet="jst.web"
+ id="jst.web.versionchange.ee7"
+ type="VERSION_CHANGE"
+ 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.webfragment"
id="jst.webfragment.versionchange.ee6"
type="VERSION_CHANGE"
@@ -723,6 +773,16 @@
class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
</delegate>
<property name="from.versions" value="3.0"/>
+ </action>
+ <action
+ facet="jst.webfragment"
+ id="jst.webfragment.versionchange.ee7"
+ type="VERSION_CHANGE"
+ 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.connector"
diff --git a/plugins/org.eclipse.jst.j2ee/pom.xml b/plugins/org.eclipse.jst.j2ee/pom.xml
index b97144e..b720d07 100644
--- a/plugins/org.eclipse.jst.j2ee/pom.xml
+++ b/plugins/org.eclipse.jst.j2ee/pom.xml
@@ -22,6 +22,6 @@
<groupId>org.eclipse.webtools.javaee</groupId>
<artifactId>org.eclipse.jst.j2ee</artifactId>
- <version>1.2.101-SNAPSHOT</version>
+ <version>1.2.200-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/org.eclipse.jst.jee.ui/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.jee.ui/META-INF/MANIFEST.MF
index ec5a643..0c3ddc8 100644
--- a/plugins/org.eclipse.jst.jee.ui/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.jst.jee.ui/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %Bundle-Name.0
Bundle-SymbolicName: org.eclipse.jst.jee.ui;singleton:=true
-Bundle-Version: 1.0.800.qualifier
+Bundle-Version: 1.0.900.qualifier
Bundle-Activator: org.eclipse.jst.jee.ui.plugin.JEEUIPlugin
Require-Bundle: org.eclipse.ui;bundle-version="[3.2.0,4.0.0)",
org.eclipse.core.runtime;bundle-version="[3.2.0,4.0.0)",
diff --git a/plugins/org.eclipse.jst.jee.ui/plugin.xml b/plugins/org.eclipse.jst.jee.ui/plugin.xml
index b35ab11..454a1b9 100644
--- a/plugins/org.eclipse.jst.jee.ui/plugin.xml
+++ b/plugins/org.eclipse.jst.jee.ui/plugin.xml
@@ -812,6 +812,11 @@
property="org.eclipse.wst.common.project.facet.core.projectFacet"
value="jst.web:3.1">
</test>
+ <test
+ forcePluginActivation="true"
+ property="org.eclipse.wst.common.project.facet.core.projectFacet"
+ value="jst.web:4.0">
+ </test>
</or>
</adapt>
<instanceof
@@ -1008,6 +1013,11 @@
property="org.eclipse.wst.common.project.facet.core.projectFacet"
value="jst.ear:7.0">
</test>
+ <test
+ forcePluginActivation="true"
+ property="org.eclipse.wst.common.project.facet.core.projectFacet"
+ value="jst.ear:8.0">
+ </test>
</or>
</adapt>
<instanceof
@@ -1283,6 +1293,11 @@
property="org.eclipse.wst.common.project.facet.core.projectFacet"
value="jst.appclient:7.0">
</test>
+ <test
+ forcePluginActivation="true"
+ property="org.eclipse.wst.common.project.facet.core.projectFacet"
+ value="jst.appclient:8.0">
+ </test>
</or>
</adapt>
<instanceof
diff --git a/plugins/org.eclipse.jst.jee.ui/pom.xml b/plugins/org.eclipse.jst.jee.ui/pom.xml
index 3b405bb..71e49ba 100644
--- a/plugins/org.eclipse.jst.jee.ui/pom.xml
+++ b/plugins/org.eclipse.jst.jee.ui/pom.xml
@@ -22,6 +22,6 @@
<groupId>org.eclipse.webtools.javaee</groupId>
<artifactId>org.eclipse.jst.jee.ui</artifactId>
- <version>1.0.800-SNAPSHOT</version>
+ <version>1.0.900-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/Ear5ContentProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/Ear5ContentProvider.java
index 16f6ca6..963ff95 100644
--- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/Ear5ContentProvider.java
+++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/Ear5ContentProvider.java
@@ -1,5 +1,5 @@
/***********************************************************************
- * Copyright (c) 2008, 2013 by SAP AG, Walldorf.
+ * Copyright (c) 2008, 2017 by SAP AG, Walldorf.
* 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
@@ -7,7 +7,7 @@
*
* Contributors:
* SAP AG - initial API and implementation
- * IBM - Java EE 7 support
+ * IBM - Java EE 7 and 8 support
***********************************************************************/
package org.eclipse.jst.jee.ui.internal.navigator;
@@ -113,7 +113,8 @@
if (facetedProject != null &&
(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_7_0_TEXT))
+ || facetedProject.hasProjectFacet(earFacet.getVersion(J2EEVersionConstants.VERSION_8_0_TEXT)))) {
AbstractGroupProvider element = getCachedContentProvider(project);
if (element != null){
children.add(element);
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 5788f29..f00c1ee 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
@@ -83,7 +83,8 @@
if (facetedProject != null &&
(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_7_0_TEXT))
+ || facetedProject.hasProjectFacet(earFacet.getVersion(J2EEVersionConstants.VERSION_8_0_TEXT)))) {
if (bundledLibsNode == null) {
BundledNode bundledLibsDirectoryNode = new BundledNode(project, Messages.LIBRARY_DIRECTORY + ": " + EarUtilities.getEARLibDir(earComponent), null);//$NON-NLS-1$
diff --git a/plugins/org.eclipse.jst.jee.web/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.jee.web/META-INF/MANIFEST.MF
index 5f2ac77..38cb6b6 100644
--- a/plugins/org.eclipse.jst.jee.web/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.jst.jee.web/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %Bundle-Name.0
Bundle-SymbolicName: org.eclipse.jst.jee.web;singleton:=true
-Bundle-Version: 1.0.600.qualifier
+Bundle-Version: 1.0.700.qualifier
Bundle-Activator: org.eclipse.jst.jee.web.Activator
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.web/plugin.xml b/plugins/org.eclipse.jst.jee.web/plugin.xml
index db3a9b8..9c37bbf 100644
--- a/plugins/org.eclipse.jst.jee.web/plugin.xml
+++ b/plugins/org.eclipse.jst.jee.web/plugin.xml
@@ -5,14 +5,14 @@
point="org.eclipse.jst.j2ee.J2EEModelProvider">
<provider>
<modelProvider factoryClass="org.eclipse.jst.jee.model.internal.Web25MergedModelProviderFactory"/>
- <facet id="jst.web" versions="2.5,3.0,3.1"/>
+ <facet id="jst.web" versions="2.5,3.0,3.1,4.0"/>
</provider>
</extension>
<extension
point="org.eclipse.jst.j2ee.J2EEModelProvider">
<provider>
<modelProvider factoryClass="org.eclipse.jst.jee.model.internal.WebFragment30ModelProviderFactory"/>
- <facet id="jst.webfragment" versions="3.0,3.1"/>
+ <facet id="jst.webfragment" versions="3.0,3.1,4.0"/>
</provider>
</extension>
</plugin>
diff --git a/plugins/org.eclipse.jst.jee.web/pom.xml b/plugins/org.eclipse.jst.jee.web/pom.xml
index 2b024db..f6437d1 100644
--- a/plugins/org.eclipse.jst.jee.web/pom.xml
+++ b/plugins/org.eclipse.jst.jee.web/pom.xml
@@ -22,6 +22,6 @@
<groupId>org.eclipse.webtools.javaee</groupId>
<artifactId>org.eclipse.jst.jee.web</artifactId>
- <version>1.0.600-SNAPSHOT</version>
+ <version>1.0.700-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
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 751d02a..09ed1f9 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
@@ -70,12 +70,18 @@
dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE_NS_URL, J2EEConstants.WEB_APP_SCHEMA_LOC_3_0);
war.setVersion(WebAppVersionType._30_LITERAL);
}
- else
- {
+ else if (version != null && version.equals(J2EEVersionConstants.VERSION_3_1_TEXT)) {
dd.getXMLNSPrefixMap().put("", J2EEConstants.JAVAEE7_NS_URL); //$NON-NLS-1$
dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE7_NS_URL, J2EEConstants.WEB_APP_SCHEMA_LOC_3_1);
// note that later EMF generations remove the _LITERAL from the enum
war.setVersion(WebAppVersionType._31);
+ }
+ else
+ {
+ dd.getXMLNSPrefixMap().put("", J2EEConstants.JAVAEE7_NS_URL); //$NON-NLS-1$
+ dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE7_NS_URL, J2EEConstants.WEB_APP_SCHEMA_LOC_4_0);
+ // note that later EMF generations remove the _LITERAL from the enum
+ war.setVersion(WebAppVersionType._40);
}
dd.setWebApp(war);
res.getContents().add((EObject) dd);
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 5e9f4d0..d8326e7 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
@@ -67,13 +67,19 @@
dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE_NS_URL, J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_3_0);
webFragment.setVersion(WebAppVersionType._30_LITERAL);
}
- else
- {
+ else if (version != null && version.equals(J2EEVersionConstants.VERSION_3_1_TEXT)) {
dd.getXMLNSPrefixMap().put("", J2EEConstants.JAVAEE7_NS_URL); //$NON-NLS-1$
dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE7_NS_URL, J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_3_1);
// note that later EMF generations remove the _LITERAL from the enum
webFragment.setVersion(WebAppVersionType._31);
}
+ else
+ {
+ dd.getXMLNSPrefixMap().put("", J2EEConstants.JAVAEE7_NS_URL); //$NON-NLS-1$
+ dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE7_NS_URL, J2EEConstants.WEBFRAGMENT_SCHEMA_LOC_4_0);
+ // note that later EMF generations remove the _LITERAL from the enum
+ webFragment.setVersion(WebAppVersionType._40);
+ }
dd.setWebFragment(webFragment);
res.getContents().add((EObject) dd);
}
diff --git a/plugins/org.eclipse.jst.jee/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.jee/META-INF/MANIFEST.MF
index 5f7b0f2..f8c52ce 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.900.qualifier
+Bundle-Version: 1.0.901.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 82dc424..eea9633 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_70 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_60 || fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_50) {
+ if( 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,8 +84,11 @@
((IFolder)appXmlFile.getParent()).create(true, true, monitor);
}
String appXmlContents = null;
- if(fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_70) {
- appXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<application id=\"Application_ID\" version=\"6\" 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_7.xsd\">\n <display-name>" + XMLWriter.getEscaped(project.getName()) + "</display-name> \n </application> "; //$NON-NLS-1$ //$NON-NLS-2$
+ 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) {
+ appXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<application id=\"Application_ID\" version=\"7\" 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_7.xsd\">\n <display-name>" + XMLWriter.getEscaped(project.getName()) + "</display-name> \n </application> "; //$NON-NLS-1$ //$NON-NLS-2$
}
else if(fv == IJ2EEFacetConstants.ENTERPRISE_APPLICATION_60) {
appXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<application id=\"Application_ID\" version=\"6\" 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/application_6.xsd\">\n <display-name> \n" + project.getName() + "</display-name> \n </application> "; //$NON-NLS-1$ //$NON-NLS-2$
diff --git a/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/contenttype/JEE8ContentDescriber.java b/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/contenttype/JEE8ContentDescriber.java
index 7e2f5ff..fdf42ce 100644
--- a/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/contenttype/JEE8ContentDescriber.java
+++ b/plugins/org.eclipse.jst.jee/jeecreation/org/eclipse/jst/jee/contenttype/JEE8ContentDescriber.java
@@ -33,6 +33,11 @@
JavaEEQuickPeek quickPeek = new JavaEEQuickPeek(contents);
switch (quickPeek.getType()) {
case JavaEEQuickPeek.APPLICATION_CLIENT_TYPE:
+ switch (quickPeek.getVersion()) {
+ case JavaEEQuickPeek.JEE_8_0_ID:
+ return VALID;
+ }
+ return INVALID;
case JavaEEQuickPeek.APPLICATION_TYPE:
switch (quickPeek.getVersion()) {
case JavaEEQuickPeek.JEE_8_0_ID:
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 4974ad3..13296d8 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
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
+ * Copyright (c) 2005, 2017 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
@@ -68,11 +68,16 @@
dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE_NS_URL, J2EEConstants.APP_CLIENT_SCHEMA_LOC_6);
client.setVersion(J2EEVersionConstants.VERSION_6_TEXT);
}
- else {
+ else if(version != null && version.equals(J2EEVersionConstants.VERSION_7_0_TEXT)) {
dd.getXMLNSPrefixMap().put("", J2EEConstants.JAVAEE7_NS_URL); //$NON-NLS-1$
dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE7_NS_URL, J2EEConstants.APP_CLIENT_SCHEMA_LOC_7);
client.setVersion(J2EEVersionConstants.VERSION_7_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);
+ client.setVersion(J2EEVersionConstants.VERSION_8_TEXT);
+ }
dd.setApplicationClient(client);
res.getContents().add((EObject) dd);
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 6b37b75..4d22113 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
@@ -105,10 +105,14 @@
else if(version != null && version.equals(J2EEVersionConstants.VERSION_6_0_TEXT)) {
dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE_NS_URL, J2EEConstants.APPLICATION_SCHEMA_LOC_6);
ear.setVersion(J2EEVersionConstants.VERSION_6_TEXT);
- } else {
+ } else if(version != null && version.equals(J2EEVersionConstants.VERSION_7_0_TEXT)){
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 {
+ 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);
}
dd.setApplication(ear);
diff --git a/plugins/org.eclipse.jst.jee/plugin.xml b/plugins/org.eclipse.jst.jee/plugin.xml
index a2ee3b8..3ecf5d2 100644
--- a/plugins/org.eclipse.jst.jee/plugin.xml
+++ b/plugins/org.eclipse.jst.jee/plugin.xml
@@ -249,15 +249,15 @@
id="org.eclipse.jst.jee.server">
<moduleType
types="jst.ear"
- versions="7.0,6.0,5.0">
+ versions="8.0,7.0,6.0,5.0">
</moduleType>
<moduleType
types="jst.appclient"
- versions="7.0,6.0,5.0,1.2,1.3,1.4">
+ versions="8.0,7.0,6.0,5.0,1.2,1.3,1.4">
</moduleType>
<moduleType
types="jst.web"
- versions="3.1,3.0,2.5,2.2,2.3,2.4">
+ versions="4.0,3.1,3.0,2.5,2.2,2.3,2.4">
</moduleType>
<moduleType
types="jst.ejb"
@@ -273,17 +273,17 @@
</moduleType>
<moduleType
types="jst.webfragment"
- versions="3.1,3.0">
+ versions="4.0,3.1,3.0">
</moduleType>
<enablement>
<or>
- <test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.appclient:7.0]"/>
+ <test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.appclient:8.0]"/>
<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.ejb:3.2]"/>
<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:3.1]"/>
- <test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.ear:[5.0-7.0]"/>
- <test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.webfragment:3.1]"/>
+ <test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.web:4.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.webfragment:4.0]"/>
</or>
</enablement>
</moduleFactory>
diff --git a/plugins/org.eclipse.jst.jee/pom.xml b/plugins/org.eclipse.jst.jee/pom.xml
index 9ee1398..4b5b4e6 100644
--- a/plugins/org.eclipse.jst.jee/pom.xml
+++ b/plugins/org.eclipse.jst.jee/pom.xml
@@ -22,6 +22,6 @@
<groupId>org.eclipse.webtools.javaee</groupId>
<artifactId>org.eclipse.jst.jee</artifactId>
- <version>1.0.900-SNAPSHOT</version>
+ <version>1.0.901-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/org.eclipse.jst.servlet.ui/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.servlet.ui/META-INF/MANIFEST.MF
index 4e9b23e..73521f1 100644
--- a/plugins/org.eclipse.jst.servlet.ui/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.jst.servlet.ui/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.jst.servlet.ui; singleton:=true
-Bundle-Version: 1.1.910.qualifier
+Bundle-Version: 1.1.920.qualifier
Bundle-Activator: org.eclipse.jst.servlet.ui.internal.plugin.ServletUIPlugin
Bundle-Vendor: %pluginVendor
Bundle-Localization: plugin
diff --git a/plugins/org.eclipse.jst.servlet.ui/pom.xml b/plugins/org.eclipse.jst.servlet.ui/pom.xml
index 552be5c..908ae50 100644
--- a/plugins/org.eclipse.jst.servlet.ui/pom.xml
+++ b/plugins/org.eclipse.jst.servlet.ui/pom.xml
@@ -22,6 +22,6 @@
<groupId>org.eclipse.webtools.javaee</groupId>
<artifactId>org.eclipse.jst.servlet.ui</artifactId>
- <version>1.1.910-SNAPSHOT</version>
+ <version>1.1.920-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/org.eclipse.jst.servlet.ui/servlet_ui/org/eclipse/jst/servlet/ui/internal/wizard/ConvertToWebModuleTypeDialog.java b/plugins/org.eclipse.jst.servlet.ui/servlet_ui/org/eclipse/jst/servlet/ui/internal/wizard/ConvertToWebModuleTypeDialog.java
index 1fe44dc..8525c98 100644
--- a/plugins/org.eclipse.jst.servlet.ui/servlet_ui/org/eclipse/jst/servlet/ui/internal/wizard/ConvertToWebModuleTypeDialog.java
+++ b/plugins/org.eclipse.jst.servlet.ui/servlet_ui/org/eclipse/jst/servlet/ui/internal/wizard/ConvertToWebModuleTypeDialog.java
@@ -30,7 +30,7 @@
private String fShellTitle = IWebWizardConstants.CONVERT_TO_WEB_TITLE;
private String fLabelText = IWebWizardConstants.SELECT_WEB_VERSION;
private static String fSelection= null;
- private String[] fAllowedStrings = new String[] {J2EEVersionConstants.VERSION_2_2_TEXT, J2EEVersionConstants.VERSION_2_3_TEXT, J2EEVersionConstants.VERSION_2_4_TEXT, J2EEVersionConstants.VERSION_2_5_TEXT, J2EEVersionConstants.VERSION_3_0_TEXT, J2EEVersionConstants.VERSION_3_1_TEXT};
+ private String[] fAllowedStrings = new String[] {J2EEVersionConstants.VERSION_2_2_TEXT, J2EEVersionConstants.VERSION_2_3_TEXT, J2EEVersionConstants.VERSION_2_4_TEXT, J2EEVersionConstants.VERSION_2_5_TEXT, J2EEVersionConstants.VERSION_3_0_TEXT, J2EEVersionConstants.VERSION_3_1_TEXT, J2EEVersionConstants.VERSION_4_0_TEXT};
private int fInitialSelectionIndex = fAllowedStrings.length-1;
public static String getSelectedVersion() {
diff --git a/plugins/org.eclipse.jst.servlet.ui/servlet_ui/org/eclipse/jst/servlet/ui/project/facet/WebProjectFirstPage.java b/plugins/org.eclipse.jst.servlet.ui/servlet_ui/org/eclipse/jst/servlet/ui/project/facet/WebProjectFirstPage.java
index 8eac032..49b31d0 100644
--- a/plugins/org.eclipse.jst.servlet.ui/servlet_ui/org/eclipse/jst/servlet/ui/project/facet/WebProjectFirstPage.java
+++ b/plugins/org.eclipse.jst.servlet.ui/servlet_ui/org/eclipse/jst/servlet/ui/project/facet/WebProjectFirstPage.java
@@ -54,8 +54,11 @@
}
else {
facets.add( primaryFacetVersion );
-
- if( primaryFacetVersion == WebFacetUtils.WEB_31 )
+ if (primaryFacetVersion == WebFacetUtils.WEB_40)
+ {
+ facets.add( JavaFacet.VERSION_1_8);
+ }
+ else if( primaryFacetVersion == WebFacetUtils.WEB_31 )
{
facets.add( JavaFacet.VERSION_1_7 );
}