diff --git a/jaxws/bundles/org.eclipse.jst.ws.cxf.core/META-INF/MANIFEST.MF b/jaxws/bundles/org.eclipse.jst.ws.cxf.core/META-INF/MANIFEST.MF
index 75cc999..7deff15 100644
--- a/jaxws/bundles/org.eclipse.jst.ws.cxf.core/META-INF/MANIFEST.MF
+++ b/jaxws/bundles/org.eclipse.jst.ws.cxf.core/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.jst.ws.cxf.core;singleton:=true
-Bundle-Version: 1.1.500.qualifier
+Bundle-Version: 1.1.600.qualifier
 Bundle-Activator: org.eclipse.jst.ws.internal.cxf.core.CXFCorePlugin
 Bundle-Vendor: %pluginProvider
 Bundle-Localization: plugin
diff --git a/jaxws/bundles/org.eclipse.jst.ws.cxf.core/pom.xml b/jaxws/bundles/org.eclipse.jst.ws.cxf.core/pom.xml
index 0882b6f..93da2c7 100644
--- a/jaxws/bundles/org.eclipse.jst.ws.cxf.core/pom.xml
+++ b/jaxws/bundles/org.eclipse.jst.ws.cxf.core/pom.xml
@@ -24,6 +24,6 @@
 
   <groupId>org.eclipse.webtools.webservices</groupId>
   <artifactId>org.eclipse.jst.ws.cxf.core</artifactId>
-  <version>1.1.500-SNAPSHOT</version>
+  <version>1.1.600-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 </project>
diff --git a/jaxws/bundles/org.eclipse.jst.ws.cxf.core/src/org/eclipse/jst/ws/internal/cxf/core/utils/LaunchUtils.java b/jaxws/bundles/org.eclipse.jst.ws.cxf.core/src/org/eclipse/jst/ws/internal/cxf/core/utils/LaunchUtils.java
index 040c7ee..7139bde 100644
--- a/jaxws/bundles/org.eclipse.jst.ws.cxf.core/src/org/eclipse/jst/ws/internal/cxf/core/utils/LaunchUtils.java
+++ b/jaxws/bundles/org.eclipse.jst.ws.cxf.core/src/org/eclipse/jst/ws/internal/cxf/core/utils/LaunchUtils.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2008, 2020 IONA Technologies PLC and others
+ * Copyright (c) 2008, 2021 IONA Technologies PLC and others
  *
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License 2.0
@@ -16,6 +16,7 @@
 
 import java.io.IOException;
 import java.util.List;
+import java.util.Map;
 
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.IStatus;
@@ -98,6 +99,15 @@
         String installedVersion = CXFCorePlugin.getDefault().getCXFRuntimeVersion(javaProject.getProject());
         CXFInstall cxfInstall = CXFCorePlugin.getDefault().getJava2WSContext().getInstallations().get(installedVersion);
 
+		if (cxfInstall.getLocation() == null) {
+			StringBuilder builder = new StringBuilder("Default [" + installedVersion + "] CXF Installation has no location\n");
+			Map<String, CXFInstall> installations = CXFCorePlugin.getDefault().getJava2WSContext().getInstallations();
+			for (Map.Entry<String, CXFInstall> entry : installations.entrySet()) {
+				builder.append("Known CXF Installation: " + entry.getKey() + " location :" + entry.getValue().getLocation());
+			}
+			CXFCorePlugin.logMessage(IStatus.INFO, builder.toString());
+		}
+
         IVMRunner vmRunner = vmInstall.getVMRunner(ILaunchManager.RUN_MODE);
         String[] runtimeClasspath = JavaRuntime.computeDefaultRuntimeClassPath(javaProject);
         VMRunnerConfiguration vmRunnerConfiguration = new VMRunnerConfiguration(className, runtimeClasspath);
diff --git a/jaxws/features/org.eclipse.jst.ws.cxf.feature/feature.xml b/jaxws/features/org.eclipse.jst.ws.cxf.feature/feature.xml
index 461b627..4760574 100644
--- a/jaxws/features/org.eclipse.jst.ws.cxf.feature/feature.xml
+++ b/jaxws/features/org.eclipse.jst.ws.cxf.feature/feature.xml
@@ -2,7 +2,7 @@
 <feature
       id="org.eclipse.jst.ws.cxf.feature"
       label="%featureName"
-      version="1.1.800.qualifier"
+      version="1.1.900.qualifier"
       provider-name="%featureProvider"
       plugin="org.eclipse.jst.ws.cxf.core"
       image="eclipse_update_120.jpg"
diff --git a/jaxws/features/org.eclipse.jst.ws.cxf.feature/pom.xml b/jaxws/features/org.eclipse.jst.ws.cxf.feature/pom.xml
index 66a357a..6ca4419 100644
--- a/jaxws/features/org.eclipse.jst.ws.cxf.feature/pom.xml
+++ b/jaxws/features/org.eclipse.jst.ws.cxf.feature/pom.xml
@@ -24,7 +24,7 @@
 
   <groupId>org.eclipse.webtools.webservices</groupId>
   <artifactId>org.eclipse.jst.ws.cxf.feature</artifactId>
-  <version>1.1.800-SNAPSHOT</version>
+  <version>1.1.900-SNAPSHOT</version>
   <packaging>eclipse-feature</packaging>
 
   <build>
diff --git a/jaxws/features/org.eclipse.jst.ws.cxf_sdk.feature/feature.xml b/jaxws/features/org.eclipse.jst.ws.cxf_sdk.feature/feature.xml
index 6c886cd..8b15772 100644
--- a/jaxws/features/org.eclipse.jst.ws.cxf_sdk.feature/feature.xml
+++ b/jaxws/features/org.eclipse.jst.ws.cxf_sdk.feature/feature.xml
@@ -2,7 +2,7 @@
 <feature
       id="org.eclipse.jst.ws.cxf_sdk.feature"
       label="%featureName"
-      version="1.1.300.qualifier"
+      version="1.1.900.qualifier"
       provider-name="%featureProvider"
       image="eclipse_update_120.jpg"
       license-feature="org.eclipse.license"
diff --git a/jaxws/features/org.eclipse.jst.ws.cxf_sdk.feature/pom.xml b/jaxws/features/org.eclipse.jst.ws.cxf_sdk.feature/pom.xml
index d057ebd..759d631 100644
--- a/jaxws/features/org.eclipse.jst.ws.cxf_sdk.feature/pom.xml
+++ b/jaxws/features/org.eclipse.jst.ws.cxf_sdk.feature/pom.xml
@@ -24,6 +24,6 @@
 
   <groupId>org.eclipse.webtools.webservices</groupId>
   <artifactId>org.eclipse.jst.ws.cxf_sdk.feature</artifactId>
-  <version>1.1.300-SNAPSHOT</version>
+  <version>1.1.900-SNAPSHOT</version>
   <packaging>eclipse-feature</packaging>
 </project>
