[118469] Cleanup
diff --git a/plugins/org.eclipse.jst.server.core/component.xml b/plugins/org.eclipse.jst.server.core/component.xml
index eee873a..e458e3d 100644
--- a/plugins/org.eclipse.jst.server.core/component.xml
+++ b/plugins/org.eclipse.jst.server.core/component.xml
@@ -29,4 +29,6 @@
   <plugin id="org.eclipse.jst.server.tomcat.core" fragment="false"/>
 
   <plugin id="org.eclipse.jst.server.tomcat.ui" fragment="false"/>
+
+  <plugin id="org.eclipse.jst.server.websphere.core" fragment="false"/>
 </component>
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeBridge.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeBridge.java
index b0d3424..2876792 100644
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeBridge.java
+++ b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeBridge.java
@@ -139,7 +139,7 @@
 				String jvmver = vmInstall2.getJavaVersion();
 				IRuntimeComponentVersion rcv;
 				
-				if (jvmver.startsWith("1.4"))
+				if (jvmver == null || jvmver.startsWith("1.4"))
 					rcv = RuntimeManager.getRuntimeComponentType("standard.jre").getVersion("1.4");
 				else if (jvmver.startsWith("1.5"))
 					rcv = RuntimeManager.getRuntimeComponentType("standard.jre").getVersion("5.0");
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServer.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServer.java
index 5a8ff27..b5d0609 100644
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServer.java
+++ b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServer.java
@@ -202,7 +202,9 @@
 		if (module == null)
 			return null;
 		
-		if (module.length == 1 && "jst.web".equals(module[0].getModuleType().getId())) {
+		IModuleType moduleType = module[0].getModuleType();
+		
+		if (module.length == 1 && moduleType != null && "jst.web".equals(moduleType.getId())) {
 			IWebModule webModule = (IWebModule) module[0].loadAdapter(IWebModule.class, null);
 			if (webModule != null) {
 				IModule[] modules = webModule.getModules();
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServerBehaviour.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServerBehaviour.java
index 4066cec..58da893 100644
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServerBehaviour.java
+++ b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServerBehaviour.java
@@ -788,4 +788,19 @@
 		}
 		return false;
 	}
+
+	/**
+	 * Temporary method to help web services team. Returns the path that the module is
+	 * published to when in test environment mode.
+	 * 
+	 * @param module a module on the server 
+	 * @return the path that the module is published to when in test environment mode,
+	 *    or null if not running as a test environment or the module is not a web module
+	 */
+	public IPath getPublishDirectory(IModule[] module) {
+		if (!getTomcatServer().isTestEnvironment() || module == null || module.length != 1)
+			return null;
+		
+		return getTempDirectory().append("webapps").append(module[0].getName());
+	}
 }
\ No newline at end of file