[526779] Updated EAR and web archive import code for EE8
The EAR and web archive import code was updated to allow for EE8 level
archives to be properly imported without being downgraded to EE7.
Signed-off-by: John Collier <John.J.Collier@ibm.com>
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.web/webproject/org/eclipse/jst/j2ee/internal/web/archive/operations/WebComponentImportDataModelProvider.java b/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/internal/web/archive/operations/WebComponentImportDataModelProvider.java
index 4c0f5d8..85879ce 100644
--- a/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/internal/web/archive/operations/WebComponentImportDataModelProvider.java
+++ b/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/internal/web/archive/operations/WebComponentImportDataModelProvider.java
@@ -79,8 +79,8 @@
@Override
protected void handleUnknownType(JavaEEQuickPeek jqp) {
jqp.setType(J2EEVersionConstants.WEB_TYPE);
- jqp.setVersion(J2EEVersionConstants.WEB_3_1_ID);
- jqp.setJavaEEVersion(J2EEVersionConstants.JEE_7_0_ID);
+ jqp.setVersion(J2EEVersionConstants.WEB_4_0_ID);
+ jqp.setJavaEEVersion(J2EEVersionConstants.JEE_8_0_ID);
}
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/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 1ceab2b..f543486 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
@@ -214,7 +214,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 = (IPath)wc.getAdapter(IPath.class);
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 62c46c0..88b6b2b 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
@@ -702,7 +702,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 47a4064..124d828 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
@@ -497,9 +497,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]);