This commit was manufactured by cvs2svn to create tag 'R1_0_3'.
diff --git a/bundles/org.eclipse.jst.ws.consumption.ui/META-INF/MANIFEST.MF b/bundles/org.eclipse.jst.ws.consumption.ui/META-INF/MANIFEST.MF
index d1f75f5..c24b785 100644
--- a/bundles/org.eclipse.jst.ws.consumption.ui/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.jst.ws.consumption.ui/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %PLUGIN_NAME
 Bundle-SymbolicName: org.eclipse.jst.ws.consumption.ui; singleton:=true
-Bundle-Version: 1.0.1.qualifier
+Bundle-Version: 1.0.2.qualifier
 Bundle-Activator: org.eclipse.jst.ws.internal.consumption.ui.plugin.WebServiceConsumptionUIPlugin
 Bundle-Vendor: %PLUGIN_PROVIDER
 Bundle-Localization: plugin
diff --git a/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/ConsumptionUI.properties b/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/ConsumptionUI.properties
index 2b2387b..12bd4b1 100644
--- a/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/ConsumptionUI.properties
+++ b/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/ConsumptionUI.properties
@@ -1,5 +1,5 @@
 ###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
+# Copyright (c) 2004, 2006 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
@@ -10,7 +10,8 @@
 #  yyyymmdd bug      Email and other contact information
 #  -------- -------- -----------------------------------------------------------
 #  20060204 124143   rsinha@ca.ibm.com - Rupam Kuehner
-#  20060204 124408   rsinha@ca.ibm.com - Rupam Kuehner     
+#  20060204 124408   rsinha@ca.ibm.com - Rupam Kuehner 
+#  20060411 136134   kathy@ca.ibm.com - Kathy Chan     
 ###############################################################################
 
 #
@@ -409,6 +410,14 @@
 TOOLTIP_TABLE_VALIDATE_MESSAGE=Use the Web Service Profile Compliance and Validation preference to enable or disable WSDL validation.
 
 #
+# Table column heading for ValidationMessageViewerWidget
+#
+TABLE_COLUMN_VALIDATION_SEVERITY=Severity
+TABLE_COLUMN_VALIDATION_LINE=Line
+TABLE_COLUMN_VALIDATION_COLUMN=Column
+TABLE_COLUMN_VALIDATION_MESSAGE=Message
+
+#
 # Tooltips for client.WebServiceClienTestPage
 #
 TOOLTIP_PWSM_PAGE=
diff --git a/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/ConsumptionUIMessages.java b/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/ConsumptionUIMessages.java
index 8a37549..f4fd908 100644
--- a/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/ConsumptionUIMessages.java
+++ b/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/ConsumptionUIMessages.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
+ * Copyright (c) 2000, 2006 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
@@ -10,7 +10,8 @@
  * yyyymmdd bug      Email and other contact information
  * -------- -------- -----------------------------------------------------------
  * 20060204 124143   rsinha@ca.ibm.com - Rupam Kuehner          
- * 20060204 124408   rsinha@ca.ibm.com - Rupam Kuehner     
+ * 20060204 124408   rsinha@ca.ibm.com - Rupam Kuehner 
+ * 20060411 136134   kathy@ca.ibm.com - Kathy Chan    
  *******************************************************************************/
 package org.eclipse.jst.ws.internal.consumption.ui;
 
@@ -232,6 +233,10 @@
 	public static String TOOLTIP_PCON_BUTTON_BROWSE_WS;
 	public static String TOOLTIP_VALIDATE_TEXT_MESSAGE;
 	public static String TOOLTIP_TABLE_VALIDATE_MESSAGE;
+	public static String TABLE_COLUMN_VALIDATION_SEVERITY;
+	public static String TABLE_COLUMN_VALIDATION_LINE;
+	public static String TABLE_COLUMN_VALIDATION_COLUMN;
+	public static String TABLE_COLUMN_VALIDATION_MESSAGE;
 	public static String TOOLTIP_PWSM_PAGE;
 	public static String TOOLTIP_PWSM_CHECKBOX_TEST;
 	public static String TOOLTIP_PWSM_COMBOBOX_TEST;
diff --git a/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/object/ValidationMessageViewerWidget.java b/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/object/ValidationMessageViewerWidget.java
index 221645b..5770d55 100644
--- a/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/object/ValidationMessageViewerWidget.java
+++ b/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/object/ValidationMessageViewerWidget.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
+ * Copyright (c) 2005, 2006 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
@@ -7,6 +7,9 @@
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
+ *yyyymmdd bug      Email and other contact information
+ * -------- -------- -----------------------------------------------------------
+ * 20060411   136134 kathy@ca.ibm.com - Kathy Chan
  *******************************************************************************/
 package org.eclipse.jst.ws.internal.consumption.ui.widgets.object;
 
@@ -45,7 +48,11 @@
   private TableViewer tableViewer_;
   private Table table_;
   private String message = null;
-  static final String columns_[] = {"severity", "line", "column", "message"};
+  static final String columns_[] = {ConsumptionUIMessages.TABLE_COLUMN_VALIDATION_SEVERITY,
+		ConsumptionUIMessages.TABLE_COLUMN_VALIDATION_LINE,
+		ConsumptionUIMessages.TABLE_COLUMN_VALIDATION_COLUMN,
+		ConsumptionUIMessages.TABLE_COLUMN_VALIDATION_MESSAGE};
+
   static final int columnsWidth_[] = {10, 10, 10, 60};
 
   
diff --git a/bundles/org.eclipse.jst.ws.consumption/META-INF/MANIFEST.MF b/bundles/org.eclipse.jst.ws.consumption/META-INF/MANIFEST.MF
index c7feffe..6efc9f0 100644
--- a/bundles/org.eclipse.jst.ws.consumption/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.jst.ws.consumption/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %PLUGIN_NAME
 Bundle-SymbolicName: org.eclipse.jst.ws.consumption; singleton:=true
-Bundle-Version: 1.0.1.qualifier
+Bundle-Version: 1.0.2.qualifier
 Bundle-ClassPath: wsc.jar,
  webserviceutils.jar
 Bundle-Activator: org.eclipse.jst.ws.internal.consumption.plugin.WebServiceConsumptionPlugin
@@ -56,5 +56,6 @@
  org.eclipse.wst.common.uriresolver,
  org.eclipse.wst.common.environment,
  org.eclipse.wst.common.project.facet.core,
- org.eclipse.jst.server.core
+ org.eclipse.jst.server.core,
+ org.eclipse.ui
 Eclipse-AutoStart: true
diff --git a/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/Consumption.properties b/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/Consumption.properties
index a2cd92c..ee0959e 100644
--- a/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/Consumption.properties
+++ b/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/Consumption.properties
@@ -1,12 +1,15 @@
 ###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
+# Copyright (c) 2004, 2006 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
 # http://www.eclipse.org/legal/epl-v10.html
 #
 # Contributors:
-#     IBM Corporation - initial API and implementation
+# IBM Corporation - initial API and implementation
+# yyyymmdd bug      Email and other contact information
+# -------- -------- -----------------------------------------------------------
+# 20060217   126757 rsinha@ca.ibm.com - Rupam Kuehner
 ###############################################################################
 
 #
@@ -173,8 +176,12 @@
 MSG_ERROR_PROJECT_IS_NOT_OPEN=The project {0} is not open.
 
 #
-# SPECIAL NOTE TO TRANSLATORS: Substitution {1} in MSG_ERROR_ADDING_FACETS_TO_PROJECT will be a delimited
-# list of translated labels. The list is formed through repeated use of MSG_FACETS.
+# SPECIAL NOTE TO TRANSLATORS: Substitution {1} in MSG_ERROR_ADDING_FACETS_TO_PROJECT and
+# MSG_ERROR_FIXED_FACETS will be a delimited list of translated labels. The list is formed 
+# through repeated use of MSG_FACETS.
 #
 MSG_ERROR_ADDING_FACETS_TO_PROJECT=Unable to add the follwing facets to project {0}: {1}.
+MSG_ERROR_FIXED_FACETS=Unable to set the following facets as fixed on project {0}: {1}.
 MSG_FACETS={0}, {1}
+
+MSG_ERROR_SETTING_RUNTIME=Unable to bind project {0} to the {1} runtime.
diff --git a/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/ConsumptionMessages.java b/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/ConsumptionMessages.java
index 05a2f11..d06f48d 100644
--- a/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/ConsumptionMessages.java
+++ b/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/ConsumptionMessages.java
@@ -1,12 +1,15 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
+ * Copyright (c) 2000, 2006 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
  * http://www.eclipse.org/legal/epl-v10.html
  *
  * Contributors:
- *     IBM Corporation - initial API and implementation
+ * IBM Corporation - initial API and implementation
+ * yyyymmdd bug      Email and other contact information
+ * -------- -------- -----------------------------------------------------------
+ * 20060217   126757 rsinha@ca.ibm.com - Rupam Kuehner
  *******************************************************************************/
 package org.eclipse.jst.ws.internal.consumption;
 
@@ -102,9 +105,12 @@
     public static String MSG_ERROR_PROJECT_DOES_NOT_EXIST;
     public static String MSG_ERROR_PROJECT_IS_NOT_OPEN;
     public static String MSG_ERROR_ADDING_FACETS_TO_PROJECT;
+    public static String MSG_ERROR_FIXED_FACETS;
     public static String MSG_FACETS;
+    public static String MSG_ERROR_SETTING_RUNTIME;
+    
 
 	static {
 		NLS.initializeMessages(BUNDLE_NAME, ConsumptionMessages.class);
 	}
-}
\ No newline at end of file
+}
diff --git a/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/command/common/CreateFacetedProjectCommand.java b/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/command/common/CreateFacetedProjectCommand.java
index e707c98..c5e20ad 100644
--- a/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/command/common/CreateFacetedProjectCommand.java
+++ b/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/command/common/CreateFacetedProjectCommand.java
@@ -1,16 +1,17 @@
 /*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
+ * Copyright (c) 2005, 2006 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
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
- *     IBM Corporation - initial API and implementation
+ * IBM Corporation - initial API and implementation
  * yyyymmdd bug      Email and other contact information
  * -------- -------- -----------------------------------------------------------
  * 20060131 121071   rsinha@ca.ibm.com - Rupam Kuehner     
  * 20060204 124408   rsinha@ca.ibm.com - Rupam Kuehner      
+ * 20060217 126757   rsinha@ca.ibm.com - Rupam Kuehner
  *******************************************************************************/
 
 package org.eclipse.jst.ws.internal.consumption.command.common;
@@ -56,12 +57,9 @@
   
   private org.eclipse.wst.common.project.facet.core.runtime.IRuntime facetRuntime;
   
-  private IProgressMonitor monitor_;
-  
   
   public IStatus execute(IProgressMonitor monitor, IAdaptable info)
   {
-    monitor_ = monitor;
     IStatus status = Status.OK_STATUS;
     
     // check if data ready
@@ -76,14 +74,23 @@
     {
       try
       {
-        IFacetedProject fproject = ProjectFacetsManager.create(projectName, null, monitor_);
+        status = FacetUtils.createNewFacetedProject(projectName);
+        if (status.getSeverity() == IStatus.ERROR)
+        {
+          return status;
+        }
+        
+        IProject createdProject = ProjectUtilities.getProject(projectName);
+        IFacetedProject fproject = ProjectFacetsManager.create(createdProject);
         
         //Decide which facets to install based on the templateId and the selected server. 
         Set facetsToAdd = getFacetsToAdd();
         
-        //Set up the install actions.
-        Set actions = FacetUtils.getInstallActions(facetsToAdd);
-        fproject.modify(actions, monitor_);
+        status = FacetUtils.addFacetsToProject(fproject, facetsToAdd);
+        if (status.getSeverity() == IStatus.ERROR)
+        {
+          return status;
+        }        
         
         Set newFacetVersions = fproject.getProjectFacets();
         Set fixedFacets = new HashSet();
@@ -91,13 +98,17 @@
             IProjectFacetVersion facetVersion = (IProjectFacetVersion) iter.next();
             fixedFacets.add(facetVersion.getProjectFacet());
         }
-        fproject.setFixedProjectFacets(fixedFacets);
+        status = FacetUtils.setFixedFacetsOnProject(fproject, fixedFacets);
+        if (status.getSeverity() == IStatus.ERROR)
+        {
+          return status;
+        }                
         
         
         //Set the runtime        
         if (facetRuntime != null)
         {
-          fproject.setRuntime(facetRuntime, monitor);
+          status = FacetUtils.setFacetRuntimeOnProject(fproject, facetRuntime);
         }
 
  
diff --git a/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/command/common/CreateModuleCommand.java b/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/command/common/CreateModuleCommand.java
index 5097a5e..1821b89 100644
--- a/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/command/common/CreateModuleCommand.java
+++ b/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/command/common/CreateModuleCommand.java
@@ -1,15 +1,16 @@
 /*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
+ * Copyright (c) 2005, 2006 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
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
- *     IBM Corporation - initial API and implementation
+ * IBM Corporation - initial API and implementation
  * yyyymmdd bug      Email and other contact information
  * -------- -------- -----------------------------------------------------------
  * 20060204 124408   rsinha@ca.ibm.com - Rupam Kuehner      *     
+ * 20060217 126757   rsinha@ca.ibm.com - Rupam Kuehner
  *******************************************************************************/
 
 package org.eclipse.jst.ws.internal.consumption.command.common;
@@ -173,9 +174,15 @@
       IStatus status = Status.OK_STATUS;      
       
       try
-      {
-        IFacetedProject fproject = ProjectFacetsManager.create(projectName, null, monitor_);
-
+      {        
+        status = FacetUtils.createNewFacetedProject(projectName);
+        if (status.getSeverity() == IStatus.ERROR)
+        {
+          return status;
+        }        
+        IProject createdProject = ProjectUtilities.getProject(projectName);
+        IFacetedProject fproject = ProjectFacetsManager.create(createdProject);        
+        
         //Decide which facets to install based on the templateId and the selected server. 
         Set facetsToAdd = getFacetsToAdd(WEB_TEMPLATE); 
         Set facetsToAddModified = facetsToAdd;
@@ -202,9 +209,11 @@
           }
         }
         
-        //Set up the install actions.
-        Set actions = FacetUtils.getInstallActions(facetsToAddModified);
-        fproject.modify(actions, monitor_);
+        status = FacetUtils.addFacetsToProject(fproject, facetsToAddModified);
+        if (status.getSeverity() == IStatus.ERROR)
+        {
+          return status;
+        }                
         
         Set newFacetVersions = fproject.getProjectFacets();
         Set fixedFacets = new HashSet();
@@ -212,21 +221,25 @@
             IProjectFacetVersion facetVersion = (IProjectFacetVersion) iter.next();
             fixedFacets.add(facetVersion.getProjectFacet());
         }
-        fproject.setFixedProjectFacets(fixedFacets);
         
+        status = FacetUtils.setFixedFacetsOnProject(fproject, fixedFacets);
+        if (status.getSeverity() == IStatus.ERROR)
+        {
+          return status;
+        }                        
         
         //Set the runtime        
         if (facetRuntime != null)
         {
-          fproject.setRuntime(facetRuntime, monitor_);
+          status = FacetUtils.setFacetRuntimeOnProject(fproject, facetRuntime);
         }        
         
       } catch (CoreException ce)
       {
-        System.out.println("Exception occurred when creating a faceted project.");
         return StatusUtils.errorStatus(NLS.bind(ConsumptionMessages.MSG_ERROR_PROJECT_CREATION, new String[] { projectName }), ce);
       }
-		return status;
+      
+      return status;
       		
 	}
 	
@@ -239,7 +252,13 @@
       
       try
       {
-        IFacetedProject fproject = ProjectFacetsManager.create(projectName, null, monitor_);
+        status = FacetUtils.createNewFacetedProject(projectName);
+        if (status.getSeverity() == IStatus.ERROR)
+        {
+          return status;
+        }        
+        IProject createdProject = ProjectUtilities.getProject(projectName);
+        IFacetedProject fproject = ProjectFacetsManager.create(createdProject);        
 
         //Decide which facets to install based on the templateId and the selected server. 
         Set facetsToAdd = getFacetsToAdd(EAR_TEMPLATE); 
@@ -267,9 +286,11 @@
           }
         }
         
-        //Set up the install actions.
-        Set actions = FacetUtils.getInstallActions(facetsToAddModified);
-        fproject.modify(actions, monitor_);
+        status = FacetUtils.addFacetsToProject(fproject, facetsToAddModified);
+        if (status.getSeverity() == IStatus.ERROR)
+        {
+          return status;
+        }                
         
         Set newFacetVersions = fproject.getProjectFacets();
         Set fixedFacets = new HashSet();
@@ -277,21 +298,25 @@
             IProjectFacetVersion facetVersion = (IProjectFacetVersion) iter.next();
             fixedFacets.add(facetVersion.getProjectFacet());
         }
-        fproject.setFixedProjectFacets(fixedFacets);
         
+        status = FacetUtils.setFixedFacetsOnProject(fproject, fixedFacets);
+        if (status.getSeverity() == IStatus.ERROR)
+        {
+          return status;
+        }                        
         
         //Set the runtime        
         if (facetRuntime != null)
         {
-          fproject.setRuntime(facetRuntime, monitor_);
+          status = FacetUtils.setFacetRuntimeOnProject(fproject, facetRuntime);
         }        
         
       } catch (CoreException ce)
-      {
-        System.out.println("Exception occurred when creating a faceted project.");
+      {        
         return StatusUtils.errorStatus(NLS.bind(ConsumptionMessages.MSG_ERROR_PROJECT_CREATION, new String[] { projectName }), ce);
       }
-        return status;
+        
+      return status;
 	}
 	
 	/**
@@ -303,7 +328,13 @@
       
       try
       {
-        IFacetedProject fproject = ProjectFacetsManager.create(projectName, null, monitor_);
+        status = FacetUtils.createNewFacetedProject(projectName);
+        if (status.getSeverity() == IStatus.ERROR)
+        {
+          return status;
+        }        
+        IProject createdProject = ProjectUtilities.getProject(projectName);
+        IFacetedProject fproject = ProjectFacetsManager.create(createdProject);        
 
         //Decide which facets to install based on the templateId and the selected server. 
         Set facetsToAdd = getFacetsToAdd(EJB_TEMPLATE); 
@@ -331,9 +362,11 @@
           }
         }
         
-        //Set up the install actions.
-        Set actions = FacetUtils.getInstallActions(facetsToAddModified);
-        fproject.modify(actions, monitor_);
+        status = FacetUtils.addFacetsToProject(fproject, facetsToAddModified);
+        if (status.getSeverity() == IStatus.ERROR)
+        {
+          return status;
+        }                
         
         Set newFacetVersions = fproject.getProjectFacets();
         Set fixedFacets = new HashSet();
@@ -341,21 +374,25 @@
             IProjectFacetVersion facetVersion = (IProjectFacetVersion) iter.next();
             fixedFacets.add(facetVersion.getProjectFacet());
         }
-        fproject.setFixedProjectFacets(fixedFacets);
-        
+
+        status = FacetUtils.setFixedFacetsOnProject(fproject, fixedFacets);
+        if (status.getSeverity() == IStatus.ERROR)
+        {
+          return status;
+        }                        
         
         //Set the runtime        
         if (facetRuntime != null)
         {
-          fproject.setRuntime(facetRuntime, monitor_);
+          status = FacetUtils.setFacetRuntimeOnProject(fproject, facetRuntime);
         }        
         
       } catch (CoreException ce)
       {
-        System.out.println("Exception occurred when creating a faceted project.");
         return StatusUtils.errorStatus(NLS.bind(ConsumptionMessages.MSG_ERROR_CREATE_EJB_COMPONENT, new String[] { projectName }), ce);
       }
-        return status;      
+      
+      return status;      
 
 	}
 	
@@ -369,7 +406,13 @@
       
       try
       {
-        IFacetedProject fproject = ProjectFacetsManager.create(projectName, null, monitor_);
+        status = FacetUtils.createNewFacetedProject(projectName);
+        if (status.getSeverity() == IStatus.ERROR)
+        {
+          return status;
+        }        
+        IProject createdProject = ProjectUtilities.getProject(projectName);
+        IFacetedProject fproject = ProjectFacetsManager.create(createdProject);        
 
         //Decide which facets to install based on the templateId and the selected server. 
         Set facetsToAdd = getFacetsToAdd(APPCLIENT_TEMPLATE); 
@@ -397,9 +440,11 @@
           }
         }
         
-        //Set up the install actions.
-        Set actions = FacetUtils.getInstallActions(facetsToAddModified);
-        fproject.modify(actions, monitor_);
+        status = FacetUtils.addFacetsToProject(fproject, facetsToAddModified);
+        if (status.getSeverity() == IStatus.ERROR)
+        {
+          return status;
+        }                
         
         Set newFacetVersions = fproject.getProjectFacets();
         Set fixedFacets = new HashSet();
@@ -407,48 +452,25 @@
             IProjectFacetVersion facetVersion = (IProjectFacetVersion) iter.next();
             fixedFacets.add(facetVersion.getProjectFacet());
         }
-        fproject.setFixedProjectFacets(fixedFacets);
-        
+
+        status = FacetUtils.setFixedFacetsOnProject(fproject, fixedFacets);
+        if (status.getSeverity() == IStatus.ERROR)
+        {
+          return status;
+        }                        
         
         //Set the runtime        
         if (facetRuntime != null)
         {
-          fproject.setRuntime(facetRuntime, monitor_);
+          status = FacetUtils.setFacetRuntimeOnProject(fproject, facetRuntime);
         }        
         
       } catch (CoreException ce)
       {
-        System.out.println("Exception occurred when creating a faceted project.");
         return StatusUtils.errorStatus(NLS.bind(ConsumptionMessages.MSG_ERROR_CREATE_APPCLIENT_COMPONENT, new String[] { projectName }), ce);
       }
-        return status;      
-      
-        /*
-		IStatus status = Status.OK_STATUS;
         
-		try
-		{
-		  IDataModel projectInfo = DataModelFactory.createDataModel(new AppClientComponentCreationDataModelProvider());
-		  projectInfo.setProperty(IAppClientComponentCreationDataModelProperties.PROJECT_NAME,projectName);
-          if (moduleName!=null)      
-		      projectInfo.setProperty(IAppClientComponentCreationDataModelProperties.COMPONENT_NAME, moduleName);
-		  if (j2eeLevel!=null)		  
-			  projectInfo.setProperty(IAppClientComponentCreationDataModelProperties.COMPONENT_VERSION, Integer.valueOf(j2eeLevel));
-		  
-		  //Don't create an EAR. The ADD_TO_EAR property gets defaulted to TRUE for everything except Web projects.
-		  projectInfo.setProperty(IAppClientComponentCreationDataModelProperties.ADD_TO_EAR, Boolean.FALSE);
-		  
-		  IDataModelOperation op = projectInfo.getDefaultOperation();
-
-			op.execute( monitor_, null);
-		}
-		catch (Exception e)
-		{
-			status = StatusUtils.errorStatus( NLS.bind(ConsumptionMessages.MSG_ERROR_CREATE_APPCLIENT_COMPONENT, new String[]{projectName}), e);
-		}
-        
-		return status;
-        */		
+      return status;      
 	}
 	
 	/**
diff --git a/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/common/FacetUtils.java b/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/common/FacetUtils.java
index 0c497c3..0aa1a45 100644
--- a/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/common/FacetUtils.java
+++ b/bundles/org.eclipse.jst.ws.consumption/src/org/eclipse/jst/ws/internal/consumption/common/FacetUtils.java
@@ -1,19 +1,21 @@
 /*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
+ * Copyright (c) 2005, 2006 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
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
- *     IBM Corporation - initial API and implementation
+ * IBM Corporation - initial API and implementation
  * yyyymmdd bug      Email and other contact information
  * -------- -------- -----------------------------------------------------------
  * 20060131 121071   rsinha@ca.ibm.com - Rupam Kuehner     
+ * 20060217 126757   rsinha@ca.ibm.com - Rupam Kuehner
  *******************************************************************************/
 
 package org.eclipse.jst.ws.internal.consumption.common;
 
+import java.lang.reflect.InvocationTargetException;
 import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.Iterator;
@@ -30,9 +32,11 @@
 import org.eclipse.jdt.core.IJavaProject;
 import org.eclipse.jdt.core.JavaCore;
 import org.eclipse.jem.util.emf.workbench.ProjectUtilities;
+import org.eclipse.jface.operation.IRunnableWithProgress;
 import org.eclipse.jst.ws.internal.common.J2EEUtils;
 import org.eclipse.jst.ws.internal.consumption.ConsumptionMessages;
 import org.eclipse.osgi.util.NLS;
+import org.eclipse.ui.PlatformUI;
 import org.eclipse.wst.command.internal.env.core.common.StatusUtils;
 import org.eclipse.wst.common.componentcore.internal.util.IModuleConstants;
 import org.eclipse.wst.common.project.facet.core.IFacetedProject;
@@ -413,7 +417,7 @@
     
     return fm;
   }
-  
+    
   public static IStatus addRequiredFacetsToProject(IProject project, RequiredFacetVersion[] rfvs, IProgressMonitor monitor)
   {
     IStatus status = Status.OK_STATUS;
@@ -515,8 +519,7 @@
               facetsToAdd = missingFacets;
             }
 
-            Set actions = FacetUtils.getInstallActions(facetsToAdd);
-            fProject.modify(actions, monitor);
+            status = addFacetsToProject(fProject, facetsToAdd);
           }
         }            
       }
@@ -538,27 +541,285 @@
       }
       else
       { 
-        //Iterate over facets to add to form error message
-        Iterator itr = facetsToAdd.iterator();
-        int size = facetsToAdd.size();
-        if (size > 0)
-        {          
-          IProjectFacetVersion firstProjectFacetVersion = (IProjectFacetVersion)itr.next();
-          String facetList = firstProjectFacetVersion.getProjectFacet().getLabel();
-          while (itr.hasNext())
-          {
-            IProjectFacetVersion pfv = (IProjectFacetVersion)itr.next();
-            String pfvLabel = pfv.getProjectFacet().getLabel();
-            facetList = NLS.bind(ConsumptionMessages.MSG_FACETS, new String[] {facetList, pfvLabel});
-          }
-          status = StatusUtils.errorStatus(NLS.bind(ConsumptionMessages.MSG_ERROR_ADDING_FACETS_TO_PROJECT, new String[] { project.getName(), facetList}));
-        }            
+        status = getErrorStatusForAddingFacets(project.getName(), facetsToAdd, ce);
       }
     }
     
     return status;
   }
   
+
+  /**
+   * Adds the set of project facet versions to the faceted project
+   * 
+   * @param fproject A faceted project which exists in the workspace
+   * @param projectFacetVersions A set containing elements of type {@link IProjectFacetVersion}
+   * @return An IStatus with a severity of IStatus.OK if the project facet 
+   * versions were added successfully. Otherwise, an IStatus with a severity of
+   * IStatus.ERROR. 
+   */
+  public static IStatus addFacetsToProject(final IFacetedProject fproject, final Set projectFacetVersions)
+  {
+    final IStatus[] status = new IStatus[1];
+    status[0] = Status.OK_STATUS;
+    final Set actions = getInstallActions(projectFacetVersions);
+    
+    // Create a runnable that applies the install actions to the faceted project
+    IRunnableWithProgress runnable = new IRunnableWithProgress()
+    {
+      public void run(IProgressMonitor shellMonitor) throws InvocationTargetException, InterruptedException
+      {
+        try
+        {
+          fproject.modify(actions, shellMonitor);
+        } catch (CoreException e)
+        {
+          status[0] = getErrorStatusForAddingFacets(fproject.getProject().getName(), projectFacetVersions, e);
+        }
+      }
+    };    
+        
+    // Run the runnable in another thread.
+    try
+    {
+      PlatformUI.getWorkbench().getProgressService().run(true, false, runnable);
+    } catch (InvocationTargetException ite)
+    {
+      status[0] = getErrorStatusForAddingFacets(fproject.getProject().getName(), projectFacetVersions, ite);
+    } catch (InterruptedException ie)
+    {
+      status[0] = getErrorStatusForAddingFacets(fproject.getProject().getName(), projectFacetVersions, ie);
+    }    
+    
+    return status[0];
+  }
+  
+  /**
+   * Returns an error status indicating that the project facet versions could not be
+   * added to the faceted project
+   * 
+   * @param projectName a project name to insert in the error message in the IStatus
+   * @param projectFacetVersions a set containing elements of type {@link IProjectFacetVersion}.
+   * The facets in this set will be listed in the error message in the IStatus.
+   * @param t a Throwable which will be inserted in the IStatus
+   * @return an IStatus with severity IStatus.ERROR
+   */
+  private static IStatus getErrorStatusForAddingFacets(String projectName, Set projectFacetVersions, Throwable t)
+  {
+    IStatus status = Status.OK_STATUS;
+    int size = projectFacetVersions.size();
+    if (size > 0)
+    {          
+      Set facets = new HashSet();
+      //Iterate over projectFacetVersions to form a set of IProjectFacets
+      Iterator itr = projectFacetVersions.iterator();
+      while (itr.hasNext())
+      {
+        IProjectFacetVersion projectFacet = (IProjectFacetVersion)itr.next();
+        IProjectFacet facet = projectFacet.getProjectFacet();
+        facets.add(facet);
+      }
+      String facetList = getFacetListMessageString(facets);
+      status = StatusUtils.errorStatus(NLS.bind(ConsumptionMessages.MSG_ERROR_ADDING_FACETS_TO_PROJECT, new String[] { projectName, facetList}), t);
+    }
+    
+    return status;
+  }
+  
+  /**
+   * Creates a new faceted project with the provided name
+   * @param projectName A String containing the name of the project to be created
+   * @return An IStatus with a severity of IStatus.OK if the faceted project
+   * was created successfully or if a project of the provided name already
+   * exists in the workspace. Otherwise, an IStatus with severity of
+   * IStatus.ERROR. 
+   */
+  public static IStatus createNewFacetedProject(final String projectName)
+  {
+    final IStatus[] status = new IStatus[1];
+    status[0] = Status.OK_STATUS;
+    IProject project = ProjectUtilities.getProject(projectName);
+    if (!project.exists())
+    {
+      // Create a runnable that creates a new faceted project.
+      IRunnableWithProgress runnable = new IRunnableWithProgress()
+      {
+        public void run(IProgressMonitor shellMonitor) throws InvocationTargetException, InterruptedException
+        {
+          try
+          {
+            IFacetedProject fProject = ProjectFacetsManager.create(projectName, null, shellMonitor);
+            if (fProject == null)
+            {
+              status[0] = StatusUtils.errorStatus(NLS.bind(ConsumptionMessages.MSG_ERROR_PROJECT_CREATION, new String[] { projectName }));
+            }
+          } catch (CoreException e)
+          {
+            status[0] = StatusUtils.errorStatus(NLS.bind(ConsumptionMessages.MSG_ERROR_PROJECT_CREATION, new String[] { projectName }), e);
+          }
+        }
+      };
+
+      // Run the runnable in another thread.
+      try
+      {
+        PlatformUI.getWorkbench().getProgressService().run(true, false, runnable);
+      } catch (InvocationTargetException ite)
+      {
+        status[0] = StatusUtils.errorStatus(NLS.bind(ConsumptionMessages.MSG_ERROR_PROJECT_CREATION, new String[] { projectName }), ite);
+      } catch (InterruptedException ie)
+      {
+        status[0] = StatusUtils.errorStatus(NLS.bind(ConsumptionMessages.MSG_ERROR_PROJECT_CREATION, new String[] { projectName }), ie);
+      }
+    }
+
+    return status[0];
+  }
+  
+  /**
+   * Sets the provided set of project facets as fixed on the faceted project
+   * 
+   * @param fProject A faceted project which exists in the workspace
+   * @param fixedFacets A set containing elements of type {@link IProjectFacet}
+   * @return An IStatus with a severity of IStatus.OK if the project facets 
+   * were successfully set as fixed facets on the faceted project. 
+   * Otherwise, an IStatus with a severity of IStatus.ERROR.
+   * 
+   * @see IFacetedProject#setFixedProjectFacets
+   */
+  public static IStatus setFixedFacetsOnProject(final IFacetedProject fProject, final Set fixedFacets)
+  {
+    final IStatus[] status = new IStatus[1];
+    status[0] = Status.OK_STATUS;
+
+    //Create a runnable that sets the fixed facets on the faceted project
+    IRunnableWithProgress runnable = new IRunnableWithProgress()
+    {
+      public void run(IProgressMonitor shellMonitor) throws InvocationTargetException, InterruptedException
+      {
+        try
+        {
+          fProject.setFixedProjectFacets(fixedFacets);
+        } catch (CoreException e)
+        {
+          status[0] = getErrorStatusForSettingFixedFacets(fProject.getProject().getName(), fixedFacets, e);
+        }
+      }
+    };
+
+    // Run the runnable in another thread.
+    try
+    {
+      PlatformUI.getWorkbench().getProgressService().run(true, false, runnable);
+    } catch (InvocationTargetException ite)
+    {
+      status[0] = getErrorStatusForSettingFixedFacets(fProject.getProject().getName(), fixedFacets, ite);
+    } catch (InterruptedException ie)
+    {
+      status[0] = getErrorStatusForSettingFixedFacets(fProject.getProject().getName(), fixedFacets, ie);
+    }    
+    
+    return status[0];
+  }
+  
+  /**
+   * Returns an error status indicating that the project facets could not be
+   * set as fixed facets on the faceted project
+   * 
+   * @param projectName a project name to insert in the error message in the IStatus
+   * @param facets a set containing elements of type {@link IProjectFacet}.
+   * The facets in this set will be listed in the error message in the IStatus.
+   * @param t a Throwable which will be inserted in the IStatus
+   * @return an IStatus with severity IStatus.ERROR
+   */
+  private static IStatus getErrorStatusForSettingFixedFacets(String projectName, Set facets, Throwable t)
+  {
+    IStatus status = Status.OK_STATUS;
+    int size = facets.size();
+    if (size > 0)
+    {          
+      String facetList = getFacetListMessageString(facets);      
+      status = StatusUtils.errorStatus(NLS.bind(ConsumptionMessages.MSG_ERROR_FIXED_FACETS, new String[] { projectName, facetList}), t);
+    }
+    
+    return status;
+  }  
+  
+  
+  /**
+   * Binds the faceted project to the facet runtime
+   * 
+   * @param fProject A faceted project which exists in the workspace
+   * @param fRuntime A facet runtime
+   * @return An IStatus with a severity of IStatus.OK if the faceted project
+   * was bound to the facet runtime successfully. Otherwise, an IStatus with severity of
+   * IStatus.ERROR. 
+   */
+  public static IStatus setFacetRuntimeOnProject(final IFacetedProject fProject, final IRuntime fRuntime)
+  {
+    final IStatus[] status = new IStatus[1];
+    status[0] = Status.OK_STATUS;
+
+    //Create a runnable that sets the facet runtime on the faceted project
+    IRunnableWithProgress runnable = new IRunnableWithProgress()
+    {
+      public void run(IProgressMonitor shellMonitor) throws InvocationTargetException, InterruptedException
+      {
+        try
+        {
+          fProject.setRuntime(fRuntime, shellMonitor);
+        } catch (CoreException e)
+        {
+          status[0] = StatusUtils.errorStatus(NLS.bind(ConsumptionMessages.MSG_ERROR_SETTING_RUNTIME, new String[] { fProject.getProject().getName(), fRuntime.getName() }), e);
+        }
+      }
+    };
+
+    // Run the runnable in another thread.
+    try
+    {
+      PlatformUI.getWorkbench().getProgressService().run(true, false, runnable);
+    } catch (InvocationTargetException ite)
+    {
+      status[0] = StatusUtils.errorStatus(NLS.bind(ConsumptionMessages.MSG_ERROR_SETTING_RUNTIME, new String[] { fProject.getProject().getName(), fRuntime.getName() }), ite);
+    } catch (InterruptedException ie)
+    {
+      status[0] = StatusUtils.errorStatus(NLS.bind(ConsumptionMessages.MSG_ERROR_SETTING_RUNTIME, new String[] { fProject.getProject().getName(), fRuntime.getName() }), ie);
+    }    
+    
+    return status[0];
+  }
+  
+  /**
+   * Returns a translatable delimited list of facet labels derived from the provided
+   * set of facets
+   * 
+   * @param facets a set containing elements of type {@link IProjectFacet}
+   * @return String a delimited list of facet labels
+   */
+  private static String getFacetListMessageString(Set facets)
+  {
+    String facetListMessage = "";
+    int size = facets.size();
+    if (size > 0)
+    {
+      Iterator itr = facets.iterator();
+      IProjectFacet firstProjectFacet = (IProjectFacet)itr.next();
+      facetListMessage = firstProjectFacet.getLabel();
+      
+      //Continue appending to facetListMessage until all the facet labels
+      //are in the list.
+      while (itr.hasNext())
+      {
+        IProjectFacet projectFacet = (IProjectFacet)itr.next();
+        String pfLabel = projectFacet.getLabel();
+        facetListMessage = NLS.bind(ConsumptionMessages.MSG_FACETS, new String[] {facetListMessage, pfLabel});
+      }            
+    }    
+    
+    return facetListMessage;
+  }
+  
   public static Set getFacetsForJavaProject(IJavaProject javaProject)
   {
     Set facets = new HashSet();
diff --git a/bundles/org.eclipse.jst.ws/META-INF/MANIFEST.MF b/bundles/org.eclipse.jst.ws/META-INF/MANIFEST.MF
index e3b25c3..862a89e 100644
--- a/bundles/org.eclipse.jst.ws/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.jst.ws/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %PLUGIN_NAME
 Bundle-SymbolicName: org.eclipse.jst.ws
-Bundle-Version: 1.0.1.qualifier
+Bundle-Version: 1.0.2.qualifier
 Bundle-Activator: org.eclipse.jst.ws.internal.plugin.WebServicePlugin
 Bundle-Vendor: %PLUGIN_PROVIDER
 Bundle-Localization: plugin
diff --git a/bundles/org.eclipse.jst.ws/src/org/eclipse/jst/ws/internal/common/String2SelectionTransformer.java b/bundles/org.eclipse.jst.ws/src/org/eclipse/jst/ws/internal/common/String2SelectionTransformer.java
index 2e0ef4b..817d820 100644
--- a/bundles/org.eclipse.jst.ws/src/org/eclipse/jst/ws/internal/common/String2SelectionTransformer.java
+++ b/bundles/org.eclipse.jst.ws/src/org/eclipse/jst/ws/internal/common/String2SelectionTransformer.java
@@ -1,12 +1,15 @@
 /*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
+ * Copyright (c) 2005, 2006 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
  * http://www.eclipse.org/legal/epl-v10.html
  * 
  * Contributors:
- *     IBM Corporation - initial API and implementation
+ * IBM Corporation - initial API and implementation
+ * yyyymmdd bug      Email and other contact information
+ * -------- -------- -----------------------------------------------------------
+ * 20060303   128094 joan@ca.ibm.com - Joan Haggarty
  *******************************************************************************/
 package org.eclipse.jst.ws.internal.common;
 
@@ -75,7 +78,11 @@
 		                ejbEdit.dispose();
 		        }
 			}
-			selection = new StructuredSelection(resource);			
+			// if selection not already set - create it from the resource object
+			if (selection == null)
+			{
+			  selection = new StructuredSelection(resource);
+			}
 		}
 		else
 		{
diff --git a/bundles/org.eclipse.jst.ws/src/org/eclipse/jst/ws/internal/common/String2TypeRuntimeServerModifier.java b/bundles/org.eclipse.jst.ws/src/org/eclipse/jst/ws/internal/common/String2TypeRuntimeServerModifier.java
index adb3c62..8f4fcf2 100644
--- a/bundles/org.eclipse.jst.ws/src/org/eclipse/jst/ws/internal/common/String2TypeRuntimeServerModifier.java
+++ b/bundles/org.eclipse.jst.ws/src/org/eclipse/jst/ws/internal/common/String2TypeRuntimeServerModifier.java
@@ -6,7 +6,10 @@
  * http://www.eclipse.org/legal/epl-v10.html
  * 
  * Contributors:
- *     IBM Corporation - initial API and implementation
+ * IBM Corporation - initial API and implementation
+ * yyyymmdd bug      Email and other contact information
+ * -------- -------- -----------------------------------------------------------
+ * 20060303   128832 joan@ca.ibm.com - Joan Haggarty
  *******************************************************************************/
 package org.eclipse.jst.ws.internal.common;
 
@@ -21,6 +24,11 @@
 	private String RUNTIME_ID = "RuntimeId";  //$NON-NLS-N$
 	private String SERVICE_SRV_ID_KEY = "Service.ServerId";  //$NON-NLS-N$
 	private String SERVER_ID = "ServerId";  //$NON-NLS-N$
+	private String TYPE_ID = "TypeId";  //$NON-NLS-N$
+	private String TD_EJB = "TOP DOWN EJB";  //$NON-NLS-N$
+	private String BU_EJB = "BOTTOM UP EJB";  //$NON-NLS-N$
+	private String TD_EJB_TYPE_ID = "1/org.eclipse.jst.ws.wsImpl.ejb";
+	private String BU_EJB_TYPE_ID = "0/org.eclipse.jst.ws.wsImpl.ejb";
 	private String SERVICE_PREFIX = "Service.";  //$NON-NLS-N$
 	private String CLIENT_PREFIX = "Client.";  //$NON-NLS-N$
 	
@@ -64,10 +72,22 @@
 			
 			String serverID = (String)typesMap.get(prefix+SERVER_ID);
 			if (serverID  != null)				
-				types.setServerId(serverID);			
+				types.setServerId(serverID);	
+			
+			//check if web service type is EJB - if not, default for Java bean types
+			String typeID = (String)typesMap.get(prefix+TYPE_ID);
+			if (typeID != null)
+			{
+				if (typeID.toUpperCase().equals(TD_EJB))  //only setting typeID specifically for EJB case
+				{
+					types.setTypeId(TD_EJB_TYPE_ID);
+				}	
+				else if (typeID.toUpperCase().equals(BU_EJB))
+				{
+					types.setTypeId(BU_EJB_TYPE_ID);
+				}	
+			}			
 		}
-  }
-
-	
+  }	
 }
 
diff --git a/bundles/org.eclipse.wst.command.env/META-INF/MANIFEST.MF b/bundles/org.eclipse.wst.command.env/META-INF/MANIFEST.MF
index 5586e08..ab1b10b 100644
--- a/bundles/org.eclipse.wst.command.env/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.wst.command.env/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %PLUGIN_NAME
 Bundle-SymbolicName: org.eclipse.wst.command.env; singleton:=true
-Bundle-Version: 1.0.1.qualifier
+Bundle-Version: 1.0.2.qualifier
 Bundle-Activator: org.eclipse.wst.command.internal.env.plugin.EnvPlugin
 Bundle-Vendor: %PLUGIN_PROVIDER
 Bundle-Localization: plugin
diff --git a/bundles/org.eclipse.wst.command.env/ant/axisservice.properties b/bundles/org.eclipse.wst.command.env/ant/axisservice.properties
index e094a0a..065f980 100644
--- a/bundles/org.eclipse.wst.command.env/ant/axisservice.properties
+++ b/bundles/org.eclipse.wst.command.env/ant/axisservice.properties
@@ -13,6 +13,9 @@
 Service.RuntimeId=org.eclipse.jst.ws.axis.creation.axisWebServiceRT
 !--type:String -  ID of target server 
 Service.ServerId=org.eclipse.jst.server.tomcat.50
+!-- Service.TypeId -  "Top Down EJB" or "Bottom Up EJB"  
+!-- Java Bean is default for both Top Down and Bottom Up
+!-- Service.TypeId=Top Down EJB
 
 !--ServiceProjectName - !--type:String - name of Service project - this property can be used to give the service project a different name than the project containing the initial selection.  type: String    
 ServiceProjectName=serviceProjectName
diff --git a/bundles/org.eclipse.wst.wsdl.ui/.classpath b/bundles/org.eclipse.wst.wsdl.ui/.classpath
index 905c508..ed58bc2 100644
--- a/bundles/org.eclipse.wst.wsdl.ui/.classpath
+++ b/bundles/org.eclipse.wst.wsdl.ui/.classpath
@@ -2,7 +2,6 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" path="src-validation"/>
-	<classpathentry kind="src" path="src-refactor"/>
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/bundles/org.eclipse.wst.wsdl.ui/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.wst.wsdl.ui/.settings/org.eclipse.jdt.core.prefs
index 4499697..5c6c6e4 100644
--- a/bundles/org.eclipse.wst.wsdl.ui/.settings/org.eclipse.jdt.core.prefs
+++ b/bundles/org.eclipse.wst.wsdl.ui/.settings/org.eclipse.jdt.core.prefs
@@ -1,6 +1,6 @@
-#Mon Jan 30 23:38:53 EST 2006
+#Mon Jan 30 18:57:13 EST 2006
 eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled
 org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
 org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
 org.eclipse.jdt.core.compiler.compliance=1.4
@@ -34,7 +34,6 @@
 org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
 org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
 org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=ignore
 org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
 org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
 org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
@@ -49,7 +48,6 @@
 org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
 org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
 org.eclipse.jdt.core.compiler.problem.unusedImport=error
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
 org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
 org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
diff --git a/bundles/org.eclipse.wst.wsdl.ui/META-INF/MANIFEST.MF b/bundles/org.eclipse.wst.wsdl.ui/META-INF/MANIFEST.MF
index 44c74f9..06c1d68 100644
--- a/bundles/org.eclipse.wst.wsdl.ui/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.wst.wsdl.ui/META-INF/MANIFEST.MF
@@ -30,7 +30,6 @@
  org.eclipse.wst.wsdl.ui.internal.parameters,
  org.eclipse.wst.wsdl.ui.internal.properties.section,
  org.eclipse.wst.wsdl.ui.internal.reconciler,
- org.eclipse.wst.wsdl.ui.internal.refactor,
  org.eclipse.wst.wsdl.ui.internal.text,
  org.eclipse.wst.wsdl.ui.internal.typesystem,
  org.eclipse.wst.wsdl.ui.internal.util,
@@ -66,14 +65,11 @@
  org.eclipse.xsd,
  org.eclipse.wst.wsdl,
  org.eclipse.wst.common.ui.properties,
- org.eclipse.wst.common.core,
  org.eclipse.wst.xsd.ui,
  org.eclipse.emf.edit,
  org.eclipse.emf.edit.ui,
  org.eclipse.wst.validation,
  org.wsdl4j,
- org.eclipse.wst.wsdl.validation,
- org.eclipse.ltk.core.refactoring,
- org.eclipse.ltk.ui.refactoring
+ org.eclipse.wst.wsdl.validation
 Eclipse-AutoStart: true
 Plugin-Class: org.eclipse.wst.wsdl.ui.internal.WSDLEditorPlugin
diff --git a/bundles/org.eclipse.wst.wsdl.ui/build.properties b/bundles/org.eclipse.wst.wsdl.ui/build.properties
index df3cd81..2743386 100644
--- a/bundles/org.eclipse.wst.wsdl.ui/build.properties
+++ b/bundles/org.eclipse.wst.wsdl.ui/build.properties
@@ -16,6 +16,5 @@
                about.html
 jars.compile.order = .
 source.. = src/,\
-           src-validation,\
-           src-refactor/
+           src-validation
 output.. = bin/
diff --git a/bundles/org.eclipse.wst.wsdl.ui/plugin.properties b/bundles/org.eclipse.wst.wsdl.ui/plugin.properties
index 1995e79..0cfcffe 100644
--- a/bundles/org.eclipse.wst.wsdl.ui/plugin.properties
+++ b/bundles/org.eclipse.wst.wsdl.ui/plugin.properties
@@ -299,6 +299,7 @@
 
 _UI_PREF_PAGE_DEFAULT_TARGET_NAMESPACE = Default Target Namespace:
 _UI_PREF_PAGE_AUTO_REGENERATE_BINDING  = Regenerate Binding on save
+_UI_PREF_PAGE_PROMPT_REGEN_BINDING_ON_SAVE = Prompt Regenerate Binding on save
 _UI_PREF_PAGE_CREATING_FILES		   = Creating files
 
 _UI_CREATE_MESSAGE_CHECKBOX_LABEL       = Create default messages
@@ -312,15 +313,6 @@
 _WARN_NAME_INVALID_CHAR       = IWAX1404W Name field contains invalid character ('
 _UI_NAME_INVALID_CHAR_END   = ')
 
-!======================================================================================
-!
-! refactoring
-!
-!======================================================================================
-refactoringActionSet.label=Refactor
-refactoring.menu.label=Refactor
-refactoring.renameAction.label=Re&name...
-
 ! Copied from sse
 23concat_EXC_=Resource {0} does not exist.
 32concat_EXC_=Editor could not be open on {0}
diff --git a/bundles/org.eclipse.wst.wsdl.ui/plugin.xml b/bundles/org.eclipse.wst.wsdl.ui/plugin.xml
index 5a78818..d866198 100644
--- a/bundles/org.eclipse.wst.wsdl.ui/plugin.xml
+++ b/bundles/org.eclipse.wst.wsdl.ui/plugin.xml
@@ -323,79 +323,4 @@
          </run>
       </validator>
    </extension>
-   
-     <!-- Search participant extension that supports XMLComponentSearchPatten on WSDL resources -->
-	 <extension   
-		point="org.eclipse.wst.common.core.searchParticipants">
-		<searchParticipant
-			id="org.eclipse.wst.wsdl.search.WSDLSearchParticipant"
-			class="org.eclipse.wst.wsdl.ui.internal.search.WSDLSearchParticipant">
-			<enablement>
-			   <or>
-			      <with variable="pattern">
-					<instanceof value="org.eclipse.wst.xml.core.internal.search.XMLComponentSearchPattern"/>			   
-				  </with>
-				</or>
-			</enablement>
-		</searchParticipant>
-	 </extension>
-	
-
-
-	<!-- Refactoring CORE -->
-	<extension
-		point="org.eclipse.ltk.core.refactoring.renameParticipants">
-		<renameParticipant
-			name="WSDL Rename Particpant"           
-			class="org.eclipse.wst.wsdl.ui.internal.refactor.WSDLComponentRenameParticipant"
-			id="org.eclipse.wst.wsdl.ui.refactoring.WSDLComponentRenameParticipant">
-			<enablement>
-			   <or>
-			   <with variable="element">
-					<instanceof value="org.eclipse.wst.wsdl.WSDLElement"/>			   
-				</with>
-			   <with variable="element">
-					<instanceof value="org.eclipse.xsd.XSDNamedComponent"/>								
-				</with>							
-				</or>
-			</enablement>			
-		</renameParticipant>
-	</extension>
-	
-	
- 	<!--  Refactoring UI extensions -->
-   <extension point="org.eclipse.ui.popupMenus"> 
-      <objectContribution 
-         id="org.eclipse.wst.wsdl.ui.refactoring.menu.objectContrib" 
-         objectClass="org.eclipse.wst.wsdl.WSDLElement"> 
-         <action
-            id="org.eclipse.wst.wsdl.ui.refactoring.menu.refactorGroup.object" 
-            enablesFor="1"
-            style="pulldown"
-            menubarPath="additions"
-            label="%refactoring.menu.label" 
-            class="org.eclipse.wst.wsdl.ui.internal.refactor.actions.WSDLRefactorGroupActionDelegate"> 
-         </action> 
-      </objectContribution>   
-   
-    <viewerContribution
-        id="org.eclipse.wst.xsd.ui.refactoring.menu.source"
-        targetID="org.eclipse.wst.wsdl.wsdlsource.source.EditorContext">
-	    <action id="org.eclipse.wst.wsdl.ui.refactoring.menu.refactorGroup.source"
-       		style="pulldown"
-            menubarPath="additions"
-            label="%refactoring.menu.label" 
-            class="org.eclipse.wst.wsdl.ui.internal.refactor.actions.WSDLRefactorGroupActionDelegate"> 
-  	    </action>
-       </viewerContribution>       
-     </extension>
-          
-     <extension point="org.eclipse.ui.commands">
-		<command
-			name="%command.wsdl.refactor.rename.element.name"
-			description="%command.wsdl.refactor.rename.element.description"
-			categoryId="org.eclipse.ui.category.edit"
-			id="org.eclipse.wst.wsdl.ui.refactor.rename.element">
-		</command>
-	</extension>   
 </plugin>
diff --git a/bundles/org.eclipse.wst.wsdl.ui/src-refactor/org/eclipse/wst/wsdl/ui/internal/search/WSDLSearchParticipant.java b/bundles/org.eclipse.wst.wsdl.ui/src-refactor/org/eclipse/wst/wsdl/ui/internal/search/WSDLSearchParticipant.java
index 40041e5..d8508b6 100644
--- a/bundles/org.eclipse.wst.wsdl.ui/src-refactor/org/eclipse/wst/wsdl/ui/internal/search/WSDLSearchParticipant.java
+++ b/bundles/org.eclipse.wst.wsdl.ui/src-refactor/org/eclipse/wst/wsdl/ui/internal/search/WSDLSearchParticipant.java
@@ -13,7 +13,6 @@
 
 import java.util.ArrayList;
 import java.util.List;
-import java.util.Map;
 
 import org.eclipse.wst.common.core.search.SearchParticipant;
 import org.eclipse.wst.common.core.search.SearchPlugin;
@@ -31,21 +30,12 @@
 	private static String ID = "org.eclipse.wst.wsdl.search.WSDLSearchParticipant";
 	private static String XSD_PARTICIPANNT_ID = "org.eclipse.wst.xsd.search.XSDSearchParticipant";
 
+
 	
-	public WSDLSearchParticipant()
-	{
-	  super();
-      id = ID;
-	}
-	
-	public String[] getSupportedContentTypes()
-	{
-	  String[] result = { "org.eclipse.wst.wsdl.wsdlsource" };
-	  return result;
-	}
-	
-	public boolean isApplicable(SearchPattern pattern, Map searchOptions)
-	{
+	public  boolean initialize(SearchPattern pattern, String[] contentTypes){
+		
+		super.initialize(pattern, contentTypes);
+		id = ID;
 		if(pattern instanceof XMLComponentSearchPattern ){
 			XMLComponentSearchPattern componentPattern = (XMLComponentSearchPattern)pattern;
 			String namespace = componentPattern.getMetaName().getNamespace();
@@ -55,16 +45,17 @@
 			}
 		}
 		return false;
-	}	
-	
+	}
+
+
 	public ComponentSearchContributor getSearchContributor() {
 
 		return new WSDLSearchContributor();
 	}
 	
-  public void beginSearching(SearchPattern pattern, Map searchOptions) {
+  public void beginSearching(SearchPattern pattern) {
 		
-		super.beginSearching(pattern, searchOptions);
+		super.beginSearching(pattern);
 		List patterns = new ArrayList();
 		if(pattern instanceof XMLComponentDeclarationPattern){
 			
diff --git a/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/actions/WSDLMenuActionContributor.java b/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/actions/WSDLMenuActionContributor.java
index ce494be..ba1026d 100644
--- a/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/actions/WSDLMenuActionContributor.java
+++ b/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/actions/WSDLMenuActionContributor.java
@@ -58,6 +58,7 @@
 import org.eclipse.wst.wsdl.ui.internal.util.CreateWSDLElementHelper;
 import org.eclipse.wst.wsdl.ui.internal.util.NameUtil;
 import org.eclipse.wst.wsdl.ui.internal.util.WSDLEditorUtil;
+import org.eclipse.wst.wsdl.ui.internal.widgets.NewComponentDialog;
 import org.eclipse.wst.wsdl.ui.internal.widgets.NewComponentWithChildDialog;
 import org.eclipse.wst.wsdl.ui.internal.wizards.BindingWizard;
 import org.eclipse.wst.wsdl.ui.internal.wizards.PortWizard;
@@ -334,7 +335,15 @@
 		menu.add(deleteAtion);
 		deleteAtion.setEnabled(isEditable);
     }
-       
+    
+    // Allow Rename through a dialog mechanism.....  This should be changed when
+    // direct editing is ready
+    if (object instanceof WSDLElement && isEditable) {
+    	RenameDialogAction renameDialog = new RenameDialogAction((WSDLElement) object);
+    	if (renameDialog.showRenameDialog())
+    		menu.add(renameDialog);
+    }
+    
     // insertion point for popupMenus extension
     menu.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
   }
@@ -1145,4 +1154,103 @@
 		wizardDialog.create();
 		wizardDialog.open();	
 	}
+}
+
+//This is a temporary class to allow renaming.  This should be replaced when direct
+//renaming is ready
+class RenameDialogAction extends Action {
+	private WSDLElement element;
+	private String defaultName = "NewName";
+	private List usedNames = new ArrayList();
+	private boolean useSmartRename = false;
+	private boolean showDialog = false;
+	
+	public RenameDialogAction(WSDLElement selection) {
+		setText(WSDLEditorPlugin.getWSDLString("_UI_ACTION_RENAME"));
+		element = selection;
+		initialize();
+	}
+	
+	public void run() {
+		String result;
+
+		NewComponentDialog dialog = new NewComponentDialog(WSDLEditorPlugin.getShell(), WSDLEditorPlugin.getWSDLString("_UI_ACTION_RENAME"), defaultName, usedNames);
+		int rc = dialog.createAndOpen();
+		if (rc == IDialogConstants.OK_ID)
+		{
+		  result = dialog.getName();
+		  if (useSmartRename) {
+		  	SmartRenameAction smartRename = new SmartRenameAction(element, result);	
+		  	smartRename.run();
+		  }
+		  else {
+		  	RenameAction rename = new RenameAction(element, result);
+		  	rename.run();
+		  }
+		}
+	}
+	
+	public void initialize() {
+		if (element instanceof Fault) {
+			usedNames = NameUtil.getUsedFaultNames((Operation) ((Fault) element).eContainer());
+			defaultName = ((Fault) element).getName();
+			
+			showDialog = true;
+			useSmartRename = true;
+		}
+		else if (element instanceof Message) {
+			usedNames = NameUtil.getUsedMessageNames(element.getEnclosingDefinition());
+			defaultName = ((Message) element).getQName().getLocalPart();
+			
+			showDialog = true;
+			useSmartRename = true;
+		}
+		else if (element instanceof Operation) {
+			usedNames = NameUtil.getUsedOperationNames((PortType) ((Operation) element).eContainer());		
+			defaultName = ((Operation) element).getName();
+			
+			showDialog = true;
+			useSmartRename = true;
+		}
+		else if (element instanceof Part) {
+			usedNames = NameUtil.getUsedPartNames((Message) ((Part) element).eContainer());			
+			defaultName = ((Part) element).getName();
+			
+			showDialog = true;
+			useSmartRename = true;
+		}
+		else if (element instanceof PortType) {
+			usedNames = NameUtil.getUsedPortTypeNames(element.getEnclosingDefinition());
+			defaultName = ((PortType) element).getQName().getLocalPart();
+			
+			showDialog = true;
+			useSmartRename = false;
+		}
+		else if (element instanceof Port) {
+			usedNames = NameUtil.getUsedPortNames((Service) ((Port) element).eContainer());
+			defaultName = ((Port) element).getName();
+			
+			showDialog = true;
+			useSmartRename = true;
+		}
+		else if (element instanceof Binding) {
+			usedNames = NameUtil.getUsedBindingNames(element.getEnclosingDefinition());			
+			defaultName = ((Binding) element).getQName().getLocalPart();
+			
+			showDialog = true;
+			useSmartRename = false;
+		}
+		else if (element instanceof Service) {
+			usedNames = NameUtil.getUsedServiceNames(element.getEnclosingDefinition());
+			defaultName = ((Service) element).getQName().getLocalPart();
+			
+			showDialog = true;
+			useSmartRename = false;
+		}
+		usedNames.remove(defaultName);
+	}
+	
+	public boolean showRenameDialog() {
+		return showDialog;
+	}
 }
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/dialogs/types/WSDLComponentFinder.java b/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/dialogs/types/WSDLComponentFinder.java
index 3673cbb..297501c 100644
--- a/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/dialogs/types/WSDLComponentFinder.java
+++ b/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/dialogs/types/WSDLComponentFinder.java
@@ -14,85 +14,58 @@
 import java.util.Iterator;
 import java.util.List;
 
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.wst.common.core.search.SearchEngine;
-import org.eclipse.wst.common.core.search.SearchMatch;
-//import org.eclipse.wst.common.core.search.SearchParticipant;
-//import org.eclipse.wst.common.core.search.SearchPlugin;
-import org.eclipse.wst.common.core.search.pattern.QualifiedName;
-import org.eclipse.wst.common.core.search.pattern.SearchPattern;
-import org.eclipse.wst.common.core.search.scope.ProjectSearchScope;
-import org.eclipse.wst.common.core.search.scope.SearchScope;
-import org.eclipse.wst.common.core.search.scope.WorkspaceSearchScope;
-import org.eclipse.wst.common.core.search.util.CollectingSearchRequestor;
-//import org.eclipse.wst.wsdl.util.WSDLConstants;
-import org.eclipse.wst.xml.core.internal.search.XMLComponentDeclarationPattern;
+import org.eclipse.core.runtime.Path;
 import org.eclipse.wst.xsd.ui.internal.dialogs.types.xml.XMLComponentFinder;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xml.XMLComponentSpecification;
+import org.eclipse.wst.xsd.ui.internal.dialogs.types.xml.XMLQuickScan;
 
 public class WSDLComponentFinder extends XMLComponentFinder {
-	QualifiedName metaName;
-    public WSDLComponentFinder(QualifiedName metaName) {
-    	this.metaName = metaName;
-    }
+    List lookupTagPaths;
     
-    
-    protected void findComponents(SearchEngine searchEngine, List list, int scope)
-    {      
-      SearchScope searchScope = new WorkspaceSearchScope();
-      if (scope == ENCLOSING_PROJECT_SCOPE)
-      {
-        searchScope = new ProjectSearchScope(currentIFile.getProject().getLocation());
-      }       
-      try {
-          CollectingSearchRequestor requestor = new CollectingSearchRequestor();
-          
-          XMLComponentDeclarationPattern pattern = new XMLComponentDeclarationPattern(new QualifiedName("*", "*"), metaName, SearchPattern.R_PATTERN_MATCH);
-          
-          // TODO (cs) rethink the commented out code below.  Is there some reason for narrowing to list of search particpants?
-          // It seems the only benefit may be to filter our xsd component declarations that aren't defined
-          // in stand alone wsdl documents.  Perhaps it's best to do this with an additional property arg on the
-          // declaration pattern or perhaps simply doing some 'post' filtering.
-          //
-          //String participantId = metaName.getNamespace().equals(WSDLConstants.WSDL_NAMESPACE_URI) ?
-          //    "org.eclipse.wst.wsdl.search.WSDLSearchParticipant" :
-          //    "org.eclipse.wst.xsd.search.XSDSearchParticipant";        		  
-          //SearchParticipant particpant = SearchPlugin.getDefault().getSearchParticipant(participantId);         
-          //SearchParticipant[] participants = { particpant };     
-          
-          // TODO (cs) I'm betting we'll need to provide some hook here to allow extenders to configure
-          // the search options.  Currently we just pass in null.
-          searchEngine.search(pattern, requestor, searchScope, null, new NullProgressMonitor());
-          
-          for (Iterator i = requestor.getResults().iterator(); i.hasNext(); )
-          {
-            SearchMatch match = (SearchMatch)i.next();
-            XMLComponentSpecification spec = new XMLComponentSpecification(metaName);
-            spec.setFileLocation(match.getFile().getLocation().toString());
-            Object o = match.map.get("name");
-            if (o != null && o instanceof QualifiedName)
-            {  
-              QualifiedName qualifiedName = (QualifiedName)o;
-              if (qualifiedName.getLocalName() != null)
-              {  
-                spec.addAttributeInfo("name", qualifiedName.getLocalName());
-                spec.setTargetNamespace(qualifiedName.getNamespace());
-                list.add(spec);
-              }  
-            }  
-          }  
-      } catch (CoreException e) {
-        e.printStackTrace();
-          //status.add(e.getStatus());
-      }      
+    public WSDLComponentFinder(List tagPaths) {
+        lookupTagPaths = new ArrayList();
+        lookupTagPaths.addAll(tagPaths);
     }
     
     public List getWorkbenchResourceComponents(int scope) {
+        List components = new ArrayList();
+        List filePaths = new ArrayList();
+        
+        // We don't want to search through the current file we're working on.
+        if (currentIFile != null) {
+            excludeFiles.add(currentIFile.getLocation().toOSString());
+        }
+        
+        // Find files matching the search criteria specified in List extensions and
+        // List excludeFiles.
+        switch (scope) {
+        case ENCLOSING_PROJECT_SCOPE:
+            filePaths = getEnclosingProjectFiles();
+            break;
+            
+        case ENTIRE_WORKSPACE_SCOPE:
+            filePaths = getWorkspaceFiles();
+            break;
+            
+        default:            
+            break;
+        }
+        
+        // Search for the components in each of the files specified in the path.
+        List attributes = new ArrayList();
+        String[] nameAttr = new String[1];
+        nameAttr[0] = "name";
+        attributes.add(nameAttr);
+        attributes.add(nameAttr);
+        attributes.add(nameAttr);
+        attributes.add(nameAttr);
 
-        List list = new ArrayList();
-        SearchEngine searchEngine = new SearchEngine();
-        findComponents(searchEngine, list, scope);    
-        return list;       
+        Iterator pathsIterator = filePaths.iterator();
+        while (pathsIterator.hasNext()) {
+//           String stringPath = ((Path) pathsIterator.next()).toOSString();
+           String stringPath = ((Path) pathsIterator.next()).toString();
+           components.addAll(XMLQuickScan.getTagInfo(stringPath, lookupTagPaths, attributes));
+        }
+        
+        return components;
     }
 }
diff --git a/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/dialogs/types/WSDLComponentSelectionProvider.java b/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/dialogs/types/WSDLComponentSelectionProvider.java
index dcb8fdc..9ef24c0 100644
--- a/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/dialogs/types/WSDLComponentSelectionProvider.java
+++ b/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/dialogs/types/WSDLComponentSelectionProvider.java
@@ -17,7 +17,6 @@
 import org.eclipse.core.resources.IFile;
 import org.eclipse.jface.viewers.ILabelProvider;
 import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.common.core.search.pattern.QualifiedName;
 import org.eclipse.wst.wsdl.Definition;
 import org.eclipse.wst.wsdl.Import;
 import org.eclipse.wst.wsdl.WSDLElement;
@@ -31,9 +30,7 @@
 import org.eclipse.wst.xsd.ui.internal.dialogs.types.xml.XMLComponentSelectionDialog;
 import org.eclipse.wst.xsd.ui.internal.dialogs.types.xml.XMLComponentSelectionProvider;
 import org.eclipse.wst.xsd.ui.internal.dialogs.types.xml.XMLComponentSpecification;
-import org.eclipse.wst.xsd.ui.internal.search.IXSDSearchConstants;
 import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.wst.wsdl.ui.internal.search.IWSDLSearchConstants;
 import org.eclipse.wst.wsdl.ui.internal.util.WSDLEditorUtil;
 import org.eclipse.xsd.XSDComplexTypeDefinition;
 import org.eclipse.xsd.XSDElementDeclaration;
@@ -52,7 +49,7 @@
     private WSDLComponentSelectionDialog dialog;
     private WSDLComponentLabelProvider labelProvider;
     private Definition definition;
-    private QualifiedName metaName;
+    private List lookupTagPaths;
     private int kind;
     
     /*
@@ -62,46 +59,55 @@
     	this.kind = kind;
         List validExt = new ArrayList(1);
         validExt.add("wsdl");
-        this.metaName = getQualifiedName(kind);
-        wsdlComponentFinder = new WSDLComponentFinder(metaName);
+        this.lookupTagPaths = getLookupTagPath();
+        wsdlComponentFinder = new WSDLComponentFinder(lookupTagPaths);
         wsdlComponentFinder.setFile(file);
-        //wsdlComponentFinder.setValidExtensions(validExt);
+        wsdlComponentFinder.setValidExtensions(validExt);
         this.definition = definition;
         labelProvider = new WSDLComponentLabelProvider();
     }
     
-    protected QualifiedName getQualifiedName(int kind)
-    {    	 
+    protected List getLookupTagPath()
+    {    	
+    	List list = new ArrayList();
     	switch (kind)
 		{
 		case WSDLConstants.BINDING :
 		{
-			return IWSDLSearchConstants.BINDING_META_NAME;
+			list.add("/definitions/binding");
+			break;
 		}
 		case WSDLConstants.PORT_TYPE :
 		{
-			return IWSDLSearchConstants.PORT_TYPE_META_NAME;
+			list.add("/definitions/portType");
+			break;
 		}	
 		case WSDLConstants.MESSAGE :
 		{
-			return IWSDLSearchConstants.MESSAGE_META_NAME;
+			list.add("/definitions/message");
+			break;
 		}   
 		case WSDLEditorUtil.TYPE :
 		{
-			// TODO... need to combine complex and simple into a single meta name
-			return IXSDSearchConstants.COMPLEX_TYPE_META_NAME;
+			list.add("/definitions/types/schema/simpleType");
+			list.add("/definitions/types/schema/complexType");
+			list.add("/schema/complexType");
+			list.add("/schema/simpleType");
+			break;
 		}
 		case WSDLEditorUtil.ELEMENT :
 		{
-			return IXSDSearchConstants.ELEMENT_META_NAME;
+			list.add("/definitions/types/schema/element");
+			list.add("/schema/element");
+			break;
 		}
 		}    	
-    	return null;
+    	return list;
     }
 
     public WSDLComponentSelectionProvider(IFile file, Definition definition, int kind, List validExt) {
         this(file, definition, kind);
-        //wsdlComponentFinder.setValidExtensions(validExt);
+        wsdlComponentFinder.setValidExtensions(validExt);
     }
     
     public void setDialog(WSDLComponentSelectionDialog dialog) {
@@ -112,11 +118,11 @@
         return null;
     }
     
-    private void createWSDLComponentObjects(IComponentList list, List inputComponents, QualifiedName metaName) {
+    private void createWSDLComponentObjects(IComponentList list, List inputComponents, String tagPath) {
         Iterator it = inputComponents.iterator();
         while (it.hasNext()) {
             WSDLElement wsdlElement = (WSDLElement) it.next();
-            XMLComponentSpecification spec = new XMLComponentSpecification(metaName); 
+            XMLComponentSpecification spec = new XMLComponentSpecification(tagPath); 
             spec.addAttributeInfo("name", wsdlElement.getElement().getAttribute("name"));
             spec.setTargetNamespace(wsdlElement.getEnclosingDefinition().getTargetNamespace());
             
@@ -127,11 +133,11 @@
         }
     }
     
-    private void createXSDComponentObjects(IComponentList list, List inputComponents, QualifiedName metaName) {
+    private void createXSDComponentObjects(IComponentList list, List inputComponents, String tagPath) {
         Iterator it = inputComponents.iterator();
         while (it.hasNext()) {
             XSDNamedComponent xsdElement = (XSDNamedComponent) it.next();
-            XMLComponentSpecification spec = new XMLComponentSpecification(metaName); 
+            XMLComponentSpecification spec = new XMLComponentSpecification(tagPath); 
             spec.addAttributeInfo("name", xsdElement.getName());
             spec.setTargetNamespace(xsdElement.getTargetNamespace());
             
@@ -144,10 +150,10 @@
         
     public void getComponents(IComponentList list, boolean quick) {
         if (quick) {
-            //Iterator tags = lookupTagPaths.iterator();
-            //while (tags.hasNext()) {
-                getComponentsQuick(list, metaName);
-            //}
+            Iterator tags = lookupTagPaths.iterator();
+            while (tags.hasNext()) {
+                getComponentsQuick(list, (String) tags.next());
+            }
         }
         else {
             // Grab components from workspace locations
@@ -172,11 +178,11 @@
         }
     }
     
-    private void getComponentsQuick(IComponentList list, QualifiedName metaName) {
+    private void getComponentsQuick(IComponentList list, String tagPath) {
         // Grab components within the file
-        if (metaName == IWSDLSearchConstants.BINDING_META_NAME) {
+        if (tagPath.equals("/definitions/binding")) {
             // Grab explictly defined components
-            createWSDLComponentObjects(list, definition.getEBindings(), metaName);
+            createWSDLComponentObjects(list, definition.getEBindings(), tagPath);
             
             // Grab directly imported components
             Iterator importsIt = getWSDLFileImports(definition.getEImports()).iterator();
@@ -185,12 +191,12 @@
                 Definition importDefinition = importItem.getEDefinition();
                 List importedComponents = importDefinition.getEBindings();
                 
-                createWSDLComponentObjects(list, importedComponents, metaName);
+                createWSDLComponentObjects(list, importedComponents, tagPath);
             }
         }
-        else if (metaName == IWSDLSearchConstants.PORT_TYPE_META_NAME) {
+        else if (tagPath.equals("/definitions/portType")) {
             // Grab explictly defined components
-            createWSDLComponentObjects(list, definition.getEPortTypes(), metaName);
+            createWSDLComponentObjects(list, definition.getEPortTypes(), tagPath);
             
             // Grab directly imported components
             Iterator importsIt = getWSDLFileImports(definition.getEImports()).iterator();
@@ -199,12 +205,12 @@
                 Definition importDefinition = importItem.getEDefinition();
                 List importedComponents = importDefinition.getEPortTypes();
                 
-                createWSDLComponentObjects(list, importedComponents, metaName);
+                createWSDLComponentObjects(list, importedComponents, tagPath);
             }
         }
-        else if (metaName == IWSDLSearchConstants.MESSAGE_META_NAME) {
+        else if (tagPath.equals("/definitions/message")) {
             // Grab explictly defined components
-            createWSDLComponentObjects(list, definition.getEMessages(), metaName);
+            createWSDLComponentObjects(list, definition.getEMessages(), tagPath);
             
             // Grab directly imported components
             Iterator importsIt = getWSDLFileImports(definition.getEImports()).iterator();
@@ -213,32 +219,31 @@
                 Definition importDefinition = importItem.getEDefinition();
                 List importedComponents = importDefinition.getEMessages();
                 
-                createWSDLComponentObjects(list, importedComponents, metaName);
+                createWSDLComponentObjects(list, importedComponents, tagPath);
             }
         }
-        /*TODO... fix these cases
-        else if (metaName == IXSDSearchConstants.COMPLEX_TYPE_META_NAME) {
-            createXSDInlineTypesObjects(list, metaName);
+        else if (tagPath.equals("/definitions/types/schema/complexType")) {
+            createXSDInlineTypesObjects(list, tagPath);
         }
-        else if (metaName.equals("/definitions/types/schema/simpleType")) {
-            createXSDInlineTypesObjects(list, metaName);
-        }*/
-        else if (metaName == IXSDSearchConstants.ELEMENT_META_NAME) {
-            createXSDElementObjects(list, metaName);
+        else if (tagPath.equals("/definitions/types/schema/simpleType")) {
+            createXSDInlineTypesObjects(list, tagPath);
+        }
+        else if (tagPath.equals("/definitions/types/schema/element")) {
+            createXSDElementObjects(list, tagPath);
             createRegularImportXSDElementObjects(list);
         }
-        else if (metaName == IXSDSearchConstants.COMPLEX_TYPE_META_NAME){
-            createXSDInlineWrapperTypeObjects(list, metaName);
+        else if (tagPath.equals("/schema/complexType")) {
+            createXSDInlineWrapperTypeObjects(list, tagPath);
             
             createXSDBuiltInTypeObjects(list);
             createRegularImportXSDTypeObjects(list);
         }
-        else if (metaName == IXSDSearchConstants.SIMPLE_TYPE_META_NAME) {
-            createXSDInlineWrapperTypeObjects(list, metaName);
+        else if (tagPath.equals("/schema/simpleType")) {
+            createXSDInlineWrapperTypeObjects(list, tagPath);
         }
-        //else if (metaName.equals("/schema/element")) {
-        //    createXSDInlineWrapperElementObjects(list, metaName);
-        //}
+        else if (tagPath.equals("/schema/element")) {
+            createXSDInlineWrapperElementObjects(list, tagPath);
+        }
     }
     
     private List getWSDLFileImports(List wsdlImports) {
@@ -258,7 +263,7 @@
     private void createXSDBuiltInTypeObjects(IComponentList list) { 
         for (int i = 0; i < XSDDOMHelper.dataType.length; i++) {
             String builtIn = XSDDOMHelper.dataType[i][0];
-            XMLComponentSpecification spec = new XMLComponentSpecification(null);//BUILT_IN_TYPE); 
+            XMLComponentSpecification spec = new XMLComponentSpecification(BUILT_IN_TYPE); 
             spec.addAttributeInfo("name", builtIn);
             spec.setTargetNamespace(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001);
 
@@ -316,8 +321,8 @@
                         }
                     }
                     
-                    createXSDComponentObjects(list, complexList, IXSDSearchConstants.COMPLEX_TYPE_META_NAME);
-                    createXSDComponentObjects(list, simpleList, IXSDSearchConstants.SIMPLE_TYPE_META_NAME);
+                    createXSDComponentObjects(list, complexList, complexPath);
+                    createXSDComponentObjects(list, simpleList, simplePath);
                 }
             }
         }
@@ -354,13 +359,13 @@
                 Iterator schemaIt = schemas.iterator();
                 while (schemaIt.hasNext()) {
                     List elementList = ((XSDSchema) schemaIt.next()).getElementDeclarations();
-                    createXSDComponentObjects(list, elementList, IXSDSearchConstants.ELEMENT_META_NAME);
+                    createXSDComponentObjects(list, elementList, path);
                 }
             }
         }
     }
     
-    private void createXSDInlineTypesObjects(IComponentList list, QualifiedName tagPath) {
+    private void createXSDInlineTypesObjects(IComponentList list, String tagPath) {
         // Handle inline schemas
     	if (definition.getETypes() == null) {
     		return;
@@ -398,7 +403,7 @@
         }
     }
 
-    private void createXSDElementObjects(IComponentList list, QualifiedName tagPath) {
+    private void createXSDElementObjects(IComponentList list, String tagPath) {
     	if (definition.getETypes() == null) {
     		return;
     	}
@@ -423,7 +428,7 @@
         }
     }
     
-    private void createXSDInlineWrapperTypeObjects(IComponentList list, QualifiedName tagPath) {
+    private void createXSDInlineWrapperTypeObjects(IComponentList list, String tagPath) {
         // Handle inline schemas
     	if (definition.getETypes() == null) {
     		return;
@@ -469,7 +474,7 @@
         }
     }
     
-    private void createXSDInlineWrapperElementObjects(IComponentList list, QualifiedName tagPath) {
+    private void createXSDInlineWrapperElementObjects(IComponentList list, String tagPath) {
     	if (definition.getETypes() == null) {
     		return;
     	}
@@ -575,26 +580,26 @@
         public Image getImage(Object element) {
             XMLComponentTreeObject specification = (XMLComponentTreeObject) element;
             XMLComponentSpecification spec = (XMLComponentSpecification) specification.getXMLComponentSpecification().get(0);
-            if (spec.getMetaName() == IWSDLSearchConstants.BINDING_META_NAME) {
+            if (spec.getTagPath().equals("/definitions/binding")) {
                 return WSDLEditorPlugin.getInstance().getImage("icons/binding_obj.gif");
             }
-            else if (spec.getMetaName() == IWSDLSearchConstants.PORT_TYPE_META_NAME) {
-                return WSDLEditorPlugin.getInstance().getImage("icons/portType_obj.gif");
+            else if (spec.getTagPath().equals("/definitions/portType")) {
+                return WSDLEditorPlugin.getInstance().getImage("icons/port_obj.gif");
             }
-            else if (spec.getMetaName() == IWSDLSearchConstants.MESSAGE_META_NAME) {
+            else if (spec.getTagPath().equals("/definitions/message")) {
                 return WSDLEditorPlugin.getInstance().getImage("icons/message_obj.gif");
             }
-            else if (spec.getMetaName() == IXSDSearchConstants.COMPLEX_TYPE_META_NAME){
-            	//|| spec.getMetaName() == ("/schema/complexType"))             	
+            else if (spec.getTagPath().equals("/definitions/types/schema/complexType") ||
+                     spec.getTagPath().equals("/schema/complexType")) {
                 return XSDEditorPlugin.getXSDImage("icons/XSDComplexType.gif");
             }
-            else if (spec.getMetaName() == IXSDSearchConstants.SIMPLE_TYPE_META_NAME ||
-                     //spec.getMetaName() == ("/schema/simpleType") ||
-                     spec.getMetaName() == null /*BUILT_IN_TYPE*/){ 
+            else if (spec.getTagPath().equals("/definitions/types/schema/simpleType") ||
+                     spec.getTagPath().equals("/schema/simpleType") ||
+                     spec.getTagPath().equals("BUILT_IN_TYPE")) {
                 return XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif");
             }
-            else if (spec.getMetaName() == IXSDSearchConstants.ELEMENT_META_NAME){
-            		// ||spec.getMetaName() == ("/schema/element"))
+            else if (spec.getTagPath().equals("/definitions/types/schema/element") ||
+                     spec.getTagPath().equals("/schema/element")) {
                 return XSDEditorPlugin.getXSDImage("icons/XSDElement.gif");
             }
     
diff --git a/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/dialogs/types/WSDLSetComponentHelper.java b/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/dialogs/types/WSDLSetComponentHelper.java
index 0d1f2a9..f14c6b1 100644
--- a/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/dialogs/types/WSDLSetComponentHelper.java
+++ b/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/dialogs/types/WSDLSetComponentHelper.java
@@ -56,7 +56,7 @@
     }
     
     public void setXSDTypeComponent(Part part, XMLComponentSpecification spec) {
-        if (spec.getMetaName() != null) {
+        if (!spec.getTagPath().equals(WSDLComponentSelectionProvider.BUILT_IN_TYPE)) {
             addImportIfNecessary(spec);
         }
         String componentObject = getPrefixedComponentName(spec);
diff --git a/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/util/WSDLPreferencePage.java b/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/util/WSDLPreferencePage.java
index a51b5e8..779b282 100644
--- a/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/util/WSDLPreferencePage.java
+++ b/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/util/WSDLPreferencePage.java
@@ -75,7 +75,7 @@
 	BooleanFieldEditor generateBindingOnSave = new BooleanFieldEditor(generateLabel, generateLabel, parent);
 	addField(generateBindingOnSave);
 	
-	String showGenerateDialogLabel = "Prompt Regenerate Binding on save";   // TODO: Externalize
+	String showGenerateDialogLabel = WSDLEditorPlugin.getWSDLString("_UI_PREF_PAGE_PROMPT_REGEN_BINDING_ON_SAVE");
 	BooleanFieldEditor showGenerateDialog = new BooleanFieldEditor(showGenerateDialogLabel, showGenerateDialogLabel, parent);
 	addField(showGenerateDialog);
 
diff --git a/bundles/org.eclipse.wst.wsdl.validation/src/org/eclipse/wst/wsdl/validation/internal/xml/DefaultXMLValidator.java b/bundles/org.eclipse.wst.wsdl.validation/src/org/eclipse/wst/wsdl/validation/internal/xml/DefaultXMLValidator.java
index 892a5a8..f890942 100644
--- a/bundles/org.eclipse.wst.wsdl.validation/src/org/eclipse/wst/wsdl/validation/internal/xml/DefaultXMLValidator.java
+++ b/bundles/org.eclipse.wst.wsdl.validation/src/org/eclipse/wst/wsdl/validation/internal/xml/DefaultXMLValidator.java
@@ -35,6 +35,7 @@
 import org.eclipse.wst.wsdl.validation.internal.ValidationMessageImpl;
 import org.eclipse.wst.wsdl.validation.internal.resolver.IURIResolutionResult;
 import org.eclipse.wst.wsdl.validation.internal.resolver.URIResolver;
+import org.eclipse.wst.wsdl.validation.internal.wsdl11.xsd.XSDValidator;
 import org.w3c.dom.DOMError;
 import org.xml.sax.Attributes;
 import org.xml.sax.InputSource;
@@ -483,7 +484,11 @@
       reader.setErrorHandler(conformanceDefaultHandler);
       reader.setContentHandler(conformanceDefaultHandler);
       
-      reader.setProperty(org.apache.xerces.impl.Constants.XERCES_PROPERTY_PREFIX + org.apache.xerces.impl.Constants.XMLGRAMMAR_POOL_PROPERTY, grammarPool);
+      // Older Xerces versions will thrown a NPE if a null grammar pool is set.
+      if(grammarPool != null)
+      {
+        reader.setProperty(org.apache.xerces.impl.Constants.XERCES_PROPERTY_PREFIX + org.apache.xerces.impl.Constants.XMLGRAMMAR_POOL_PROPERTY, grammarPool);
+      }
       reader.setProperty(org.apache.xerces.impl.Constants.XERCES_PROPERTY_PREFIX + org.apache.xerces.impl.Constants.ENTITY_RESOLVER_PROPERTY, new MyEntityResolver(uriResolver));
       reader.setFeature(org.apache.xerces.impl.Constants.XERCES_FEATURE_PREFIX + org.apache.xerces.impl.Constants.CONTINUE_AFTER_FATAL_ERROR_FEATURE, false);
       reader.setFeature(org.apache.xerces.impl.Constants.SAX_FEATURE_PREFIX + org.apache.xerces.impl.Constants.NAMESPACES_FEATURE, true);
@@ -529,6 +534,8 @@
 	    return new XMLInputSource(rid);
 	  }
 	  
+	  boolean nsUsed = false;
+	  
 	  String ns = rid.getNamespace();
 	  if(ns != null && ignoredNamespaceList.contains(ns))
 	  {
@@ -539,6 +546,7 @@
 	  if(systemId == null)
 	  {
 		systemId = ns;
+		nsUsed = true;
 	  }
 	  String publicId = rid.getPublicId();
       if(publicId == null)
@@ -546,24 +554,44 @@
         publicId = systemId;
       }
       
-      IURIResolutionResult result = uriResolver.resolve("", publicId, systemId);
-      String uri = result.getPhysicalLocation();
-      if (uri != null && !uri.equals(""))
+      // Xerces tends to try to resolve locations with no information.
+      // No need to do any processing if we have no information.
+      if(publicId != null || systemId != null)
       {
-	    try
-	    {
-		  URL entityURL = new URL(uri);
-          XMLInputSource is = new XMLInputSource(rid.getPublicId(), systemId, result.getLogicalLocation());
-		  is.setByteStream(entityURL.openStream());
-          if (is != null)
+        IURIResolutionResult result = uriResolver.resolve("", publicId, systemId);
+        String uri = result.getPhysicalLocation();
+        if (uri != null && !uri.equals(""))
+        {
+          // If the namespace was used to resolve this reference ensure a schema
+          // has been returned. Namespaces tend to point to Web resources that
+          // may or may not be schemas.
+          boolean createEntityResult = true;
+          if(nsUsed)
           {
-            return is;
+        	XSDValidator xsdVal = new XSDValidator();
+        	xsdVal.validate(uri, uriResolver, null);
+        	if(!xsdVal.isValid())
+        	  createEntityResult = false;
           }
-	    }
-	    catch(Exception e)
-	    {
-		  // No need to report this error. Simply continue below.
-	    }
+          
+          if(createEntityResult)
+          {
+	        try
+	        {
+		      URL entityURL = new URL(uri);
+              XMLInputSource is = new XMLInputSource(rid.getPublicId(), systemId, result.getLogicalLocation());
+		      is.setByteStream(entityURL.openStream());
+              if (is != null)
+              {
+                return is;
+              }
+	        }
+	        catch(Exception e)
+	        {
+		      // No need to report this error. Simply continue below.
+	        }
+          }
+        }
       }
       return null;
     }
diff --git a/bundles/org.eclipse.wst.wsdl/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.wst.wsdl/.settings/org.eclipse.jdt.core.prefs
index ae9d67c..2407534 100644
--- a/bundles/org.eclipse.wst.wsdl/.settings/org.eclipse.jdt.core.prefs
+++ b/bundles/org.eclipse.wst.wsdl/.settings/org.eclipse.jdt.core.prefs
@@ -1,6 +1,6 @@
-#Mon Jan 30 23:40:08 EST 2006
+#Mon Jan 30 18:52:04 EST 2006
 eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled
 org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
 org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
 org.eclipse.jdt.core.compiler.compliance=1.4
@@ -34,7 +34,6 @@
 org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
 org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
 org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=ignore
 org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
 org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
 org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
@@ -49,7 +48,6 @@
 org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
 org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
 org.eclipse.jdt.core.compiler.problem.unusedImport=error
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
 org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
 org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
diff --git a/bundles/org.eclipse.wst.wsdl/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.wst.wsdl/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 17c50aa..0000000
--- a/bundles/org.eclipse.wst.wsdl/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Mon Jan 30 23:19:19 EST 2006
-eclipse.preferences.version=1
-internal.default.compliance=default
diff --git a/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/generator/PortGenerator.java b/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/generator/PortGenerator.java
index c16557b..0d3bce0 100644
--- a/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/generator/PortGenerator.java
+++ b/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/generator/PortGenerator.java
@@ -16,8 +16,6 @@
 import java.util.Map;
 
 import org.eclipse.wst.wsdl.Binding;
-import org.eclipse.wst.wsdl.Definition;
-import org.eclipse.wst.wsdl.Import;
 import org.eclipse.wst.wsdl.Port;
 import org.eclipse.wst.wsdl.Service;
 import org.eclipse.wst.wsdl.WSDLFactory;
@@ -25,132 +23,43 @@
 public class PortGenerator extends BaseGenerator {
 	private Service service;
 	
-    /**
-     * Constructs a port generator given the target service.
-     * @param service the target Service, must not be null.
-     */
 	public PortGenerator(Service service) {
 		this.service = service;
 		definition = service.getEnclosingDefinition();
 	}
 	
-    /**
-     * Generates a service port given it's name and binding name.
-     * The port is then added to the service passed in the constructor.
-     * @return the Port instance
-     */
 	public Port generatePort() {
-	  String portName = getName();
-	  String bindingName = getRefName();		
-	  
-	  Binding binding = getBinding(bindingName);
-	  
-	  Port port = WSDLFactory.eINSTANCE.createPort();
-	  port.setName(portName);
-	  port.setEnclosingDefinition(definition);
-	  port.setBinding(binding);
-	  
-	  service.addPort(port);
-	  
-	  ContentGenerator contentGenerator = getContentGenerator(); 
-	  
-	  if (contentGenerator != null) {
-	    contentGenerator.generatePortContent(port);
-	  }
-	  
-	  return port;
+		String name = getName();
+		String bindingName = getRefName();		
+		
+	    Port port = WSDLFactory.eINSTANCE.createPort();
+	    port.setName(getName());
+	    port.setEnclosingDefinition(service.getEnclosingDefinition());
+		port.setBinding(getBinding(getRefName()));
+	    service.addPort(port);
+		
+		if (this.getContentGenerator() != null) {
+			this.getContentGenerator().generatePortContent(port);
+		}
+		
+		return port;
 	}
 	
-	/**
-	 * Locates a binding given its prefixed name (someNSPrefix:someBindingName).
-	 * 
-	 * @param bindingName the qname of the desired binding.
-	 * @return a Binding with the given name, or null if one is not found.
-	 */
 	private Binding getBinding(String bindingName) {
-      List allBindings = getAllBindings();
-      Iterator bindingIterator = allBindings.iterator();
-	  
-	  while (bindingIterator.hasNext()) {
-	    Binding binding = (Binding)bindingIterator.next();
-	    
-	    List prefixedNames = getPrefixedNames(binding);
-	    
-	    if (prefixedNames.contains(bindingName)) {
-	      return binding;
-	    }
-	  }
-	  
-	  return null;
-	}
-	
-	/**
-	 * Locates all the bindings available in this definition and all its
-	 * imported definitions.
-	 * 
-	 * @return a List with all available bindings.
-	 */
-	public List getAllBindings() {
-	  List allBindings = new ArrayList();
-	  List allDefinitions = getAllDefinitions();
-	  
-	  Iterator defsIterator = allDefinitions.iterator();
-	  
-	  while (defsIterator.hasNext()) {
-	    Definition definition = (Definition) defsIterator.next();
-	    Map bindings = definition.getBindings();
-	    
-	    // ISSUE A possible problem here if somehow a binding is duplicated in one of the imports?
-	    // In that case we should iterate over and check them one by one.
-	    
-	    allBindings.addAll(bindings.values());
-	  }
-	  
-	  return allBindings;
-	}
-	
-	/**
-	 * Attempts to locate and add to the list all the definitions imported by the
-	 * definition passed in. Recursively tries to locate all definitions.
-	 * 
-	 * @param definition the start Definition. Must not be null.
-	 * @param list used to collect all the imported definitions. Must not be null.
-	 */
-	private void addDefinition(Definition definition, List list) {
-	  list.add(definition);
-	  List imports = definition.getEImports();
-	  Iterator importsIterator = imports.iterator();
-	  
-	  while (importsIterator.hasNext()) {
-	    Import theImport = (Import)importsIterator.next();
-	    
-	    String importLocationURI = theImport.getLocationURI();
-	    if (importLocationURI != null && 
-	        // ISSUE This assumption seems a bit weak.
-            importLocationURI.endsWith("wsdl")) {
-	      Definition importedDefinition = theImport.getEDefinition();
-	      
-	      if (importedDefinition != null && 
-              !list.contains(importedDefinition)) {
-	        // Recursively try to locate all definitions.
-
-            addDefinition(importedDefinition, list);
-	      }
-	    }
-	  }
-	}
-	
-	/**
-	 * Attempts to locate all definitions imported by the current definition and
-     * all their imports in turn. 
-	 * 
-	 * @return a List with all definitions imported by the current definition.
-	 */
-	private List getAllDefinitions()
-	{
-	  List list = new ArrayList();
-	  addDefinition(definition, list);
-	  return list;
+		Iterator bindingIt = definition.getEBindings().iterator();
+		while (bindingIt.hasNext()) {
+			Binding binding = (Binding) bindingIt.next();
+			String currentBindingName = binding.getQName().getLocalPart();
+			String currentNamespace = binding.getQName().getNamespaceURI();
+			
+			List prefixedNames = getPrefixedNames(binding);
+			
+			if (prefixedNames.contains(bindingName)) {
+				return binding;
+			}
+		}
+		
+		return null;
 	}
 	
 	private List getPrefixedNames(Binding binding) {
@@ -166,7 +75,7 @@
 			
 			if (currentNamespace.equals(value)) {
 				// Found a match.  Add to our list
-				prefixedNames.add(key + ":" + currentBindingName); //$NON-NLS-1$
+				prefixedNames.add(key + ":" + currentBindingName);
 			}
 		}
 		
diff --git a/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/util/WSDLResourceImpl.java b/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/util/WSDLResourceImpl.java
index c967624..ee5e521 100644
--- a/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/util/WSDLResourceImpl.java
+++ b/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/util/WSDLResourceImpl.java
@@ -260,22 +260,6 @@
       documentBuilderFactory.setNamespaceAware(true);
       documentBuilderFactory.setValidating(false);
 
-      try
-      {
-        // Using a deferred DOM document in the WSDL model may cause a
-        // performance problem in terms of memory consumption in particular.
-        // We're attempting to use the feature which instructs the Xerces parser
-        // to not use deferred DOM trees.
-        // TODO Convert to use setFeature when it becomes available. The Xerces
-        // versions < 2.7.1 do not fully support setFeature, so we have to use
-        // setAttribute.
-        documentBuilderFactory.setAttribute("http://apache.org/xml/features/dom/defer-node-expansion", Boolean.FALSE); //$NON-NLS-1$
-      }
-      catch (IllegalArgumentException e)
-      {
-        // Ignore, as the code will have to run with parsers other than Xerces.
-      }      
-
       DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
 
       // TBD - Revisit
diff --git a/bundles/org.eclipse.wst.wsi/META-INF/MANIFEST.MF b/bundles/org.eclipse.wst.wsi/META-INF/MANIFEST.MF
index 2542980..e356712 100644
--- a/bundles/org.eclipse.wst.wsi/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.wst.wsi/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %_PLUGIN_NAME
 Bundle-SymbolicName: org.eclipse.wst.wsi; singleton:=true
-Bundle-Version: 1.0.1.qualifier
+Bundle-Version: 1.0.2.qualifier
 Bundle-Activator: org.eclipse.wst.wsi.internal.WSITestToolsPlugin
 Bundle-Vendor: %_PROVIDER_NAME
 Bundle-Localization: plugin
diff --git a/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/WSITestToolsEclipseProperties.java b/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/WSITestToolsEclipseProperties.java
index b5e509c..debcff7 100644
--- a/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/WSITestToolsEclipseProperties.java
+++ b/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/WSITestToolsEclipseProperties.java
@@ -14,6 +14,8 @@
 import org.eclipse.core.resources.IProject;
 import org.eclipse.core.resources.ResourcesPlugin;
 import org.eclipse.core.runtime.Path;
+import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolver;
+import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolverPlugin;
 import org.eclipse.wst.ws.internal.plugin.WSPlugin;
 import org.eclipse.wst.ws.internal.preferences.PersistentWSIContext;
 
@@ -27,8 +29,10 @@
   */
   public static WSIPreferences checkWSIPreferences(String fileuri)
   {
+	// Cache the WS-I tads.
+	cacheTADFiles();
+	
     WSIPreferences preferences = new WSIPreferences();
-    
     // Remove file: and any slashes from the fileuri. 
     // Eclipse's resolution mechanism needs to start with the drive.
     String uriStr = trimURI(fileuri);
@@ -101,5 +105,38 @@
     }
     return preferences;
   }
+  
+  protected static void cacheTADFiles()
+  {
+	  String resultAP = cacheFile(AP_ASSERTION_FILE);
+	  if(resultAP != null)
+	  {
+		  AP_ASSERTION_FILE = resultAP;
+	  }
+	  
+	  String resultSSBP = cacheFile(SSBP_ASSERTION_FILE);
+	  if(resultSSBP != null)
+	  {
+		  SSBP_ASSERTION_FILE = resultSSBP;
+	  }
+  }
+  
+  protected static String cacheFile(String uri)
+  {
+	  URIResolver resolver = getURIResolver();
+	  String resolvedUri = resolver.resolve("", null, uri);
+	  return resolver.resolvePhysicalLocation("", null, resolvedUri);
+  }
+  
+  /**
+   * Get the URI resolver to use for WS-I validaiton.
+   * 
+   * @return
+   * 		The URI resolver to use for WS-I validation.
+   */
+  public static URIResolver getURIResolver()
+  {
+	  return URIResolverPlugin.createResolver();
+  }
 
 }
diff --git a/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/WSITestToolsProperties.java b/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/WSITestToolsProperties.java
index f18cf04..8e69cdf 100644
--- a/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/WSITestToolsProperties.java
+++ b/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/WSITestToolsProperties.java
@@ -19,8 +19,8 @@
   protected static String tadfile = "";
 
   public final static String schemaDir = "common/schemas/";
-  public final static String SSBP_ASSERTION_FILE = "http://www.ws-i.org/Testing/Tools/2005/01/SSBP10_BP11_TAD_1-0.xml";
-  public final static String AP_ASSERTION_FILE = "http://www.ws-i.org/Testing/Tools/2004/12/AP10_BP11_SSBP10_TAD.xml";
+  public static String SSBP_ASSERTION_FILE = "http://www.ws-i.org/Testing/Tools/2005/01/SSBP10_BP11_TAD_1-0.xml";
+  public static String AP_ASSERTION_FILE = "http://www.ws-i.org/Testing/Tools/2004/12/AP10_BP11_SSBP10_TAD.xml";
   public final static String DEFAULT_ASSERTION_FILE = AP_ASSERTION_FILE;
   
   public static final String STOP_NON_WSI = "0";
diff --git a/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/core/WSIConstants.java b/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/core/WSIConstants.java
index 6db52db..fc1ee60 100644
--- a/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/core/WSIConstants.java
+++ b/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/core/WSIConstants.java
@@ -20,11 +20,6 @@
  * @author Graham Turrell (gturrell@uk.ibm.com)
  */
 public interface WSIConstants {
-	/**
-	 * Copyright notice.
-	 */
-	public static final String COPYRIGHT = "Copyright (C) 2002-2003 by The Web Services-Interoperability Organization and Certain "
-			+ "of its Members. All Rights Reserved.\nUse of this Material is governed by WS-I licenses included within the documentation.";
 
 	/**
 	 * XML declaration statement.
diff --git a/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/core/profile/impl/ProfileAssertionsReaderImpl.java b/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/core/profile/impl/ProfileAssertionsReaderImpl.java
index 3b2a9d9..db95949 100644
--- a/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/core/profile/impl/ProfileAssertionsReaderImpl.java
+++ b/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/core/profile/impl/ProfileAssertionsReaderImpl.java
@@ -10,12 +10,17 @@
  *******************************************************************************/
 package org.eclipse.wst.wsi.internal.core.profile.impl;
 
+import java.io.IOException;
 import java.io.Reader;
+import java.net.URL;
 import java.util.Iterator;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.TreeMap;
 
+import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolver;
+import org.eclipse.wst.wsi.internal.WSITestToolsEclipseProperties;
+import org.eclipse.wst.wsi.internal.WSITestToolsProperties;
 import org.eclipse.wst.wsi.internal.core.WSIConstants;
 import org.eclipse.wst.wsi.internal.core.WSIException;
 import org.eclipse.wst.wsi.internal.core.profile.EntryTypeList;
@@ -27,7 +32,9 @@
 import org.eclipse.wst.wsi.internal.core.util.Utils;
 import org.eclipse.wst.wsi.internal.core.xml.XMLUtils;
 import org.xml.sax.Attributes;
+import org.xml.sax.EntityResolver;
 import org.xml.sax.InputSource;
+import org.xml.sax.SAXException;
 import org.xml.sax.XMLReader;
 import org.xml.sax.helpers.DefaultHandler;
 
@@ -93,7 +100,32 @@
 
       // Set content handler to inner class
       reader.setContentHandler(new ProfileAssertionsHandler());
+      
+      if(WSITestToolsProperties.getEclipseContext())
+      {
+    	  EntityResolver resolver = new EntityResolver(){
 
+			public InputSource resolveEntity(String publicId, String systemId) throws SAXException, IOException {
+				URIResolver resolver = WSITestToolsEclipseProperties.getURIResolver();
+				String uri = resolver.resolve("", publicId, systemId);
+				String physicalLocation = resolver.resolvePhysicalLocation("", publicId, uri);
+				InputSource is = null;
+				try
+				{
+					URL url = new URL(physicalLocation);
+					is = new InputSource(uri);
+					is.setByteStream(url.openStream());
+				}
+				catch(Exception e)
+				{
+					// Do nothing if opening the stream fails.
+				}
+				return is;
+			}
+    		  
+    	  };
+    	  reader.setEntityResolver(resolver);
+      }
       // Parse profile definition file
       reader.parse(inputSource);
     }
@@ -107,15 +139,24 @@
       //Check to see if the version of test asssertion document is supported
       if (!Utils.isValidProfileTADVersion(profileAssertions))
       {
-        throw new WSIException(
+    	String tadVersion = profileAssertions.getTADVersion();
+    	if(tadVersion != null)
+    	{
+    	  String tadName = profileAssertions.getTADName();
+          throw new WSIException(
           "\nVersion "
-            + profileAssertions.getTADVersion()
+            + tadVersion
             + " of the \""
-            + profileAssertions.getTADName()
+            + tadName
             + "\"\n"
             + "document is not compatible with this version of"
             + "\n"
             + "the test tools.");
+    	}
+    	else
+    	{
+    	  throw new WSIException("WS-I validation was unable to run. Unable to read the test assertion document.");
+    	}
       }
     }
 
diff --git a/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/core/util/TestUtils.java b/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/core/util/TestUtils.java
index c0ae945..b47c1d1 100644
--- a/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/core/util/TestUtils.java
+++ b/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/core/util/TestUtils.java
@@ -69,8 +69,8 @@
         + toolInfo.getVersion()
         + ", Release Date: "
         + toolInfo.getReleaseDate());
-    System.out.println(WSIConstants.COPYRIGHT);
-    System.out.println(" ");
+    // System.out.println(WSIConstants.COPYRIGHT);
+    // System.out.println(" ");
   }
 
   /** 
diff --git a/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/validate/wsdl/WSDLValidator.java b/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/validate/wsdl/WSDLValidator.java
index 0c834b2..2c477b7 100644
--- a/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/validate/wsdl/WSDLValidator.java
+++ b/bundles/org.eclipse.wst.wsi/src/org/eclipse/wst/wsi/internal/validate/wsdl/WSDLValidator.java
@@ -296,7 +296,7 @@
 	  catch (WSIAnalyzerException e)
 	  {
 		// TODO: Add code to log error 
-		System.out.println("Unable to run WS-I WSDL conformance check.\n" + e);
+		valInfo.addWarning(WSIConstants.WSI_PREFIX + "A problem occured while running the WS-I WSDL conformance check: " + e, 1, 0, valInfo.getFileURI());
 	  }
     }
   }
diff --git a/docs/org.eclipse.jst.ws.axis.ui.doc.user/META-INF/MANIFEST.MF b/docs/org.eclipse.jst.ws.axis.ui.doc.user/META-INF/MANIFEST.MF
index e015c16..b06c705 100644
--- a/docs/org.eclipse.jst.ws.axis.ui.doc.user/META-INF/MANIFEST.MF
+++ b/docs/org.eclipse.jst.ws.axis.ui.doc.user/META-INF/MANIFEST.MF
@@ -2,7 +2,6 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.jst.ws.axis.ui.doc.user; singleton:=true
-Bundle-Version: 1.0.1.qualifier
+Bundle-Version: 1.0.2.qualifier
 Bundle-Vendor: %pluginProvider
 Bundle-Localization: plugin
-Eclipse-AutoStart: true
diff --git a/docs/org.eclipse.jst.ws.axis.ui.doc.user/tasks/tsampappa.html b/docs/org.eclipse.jst.ws.axis.ui.doc.user/tasks/tsampappa.html
index f2c900e..4b46a73 100644
--- a/docs/org.eclipse.jst.ws.axis.ui.doc.user/tasks/tsampappa.html
+++ b/docs/org.eclipse.jst.ws.axis.ui.doc.user/tasks/tsampappa.html
@@ -54,10 +54,8 @@
 service will be overwritten by the client's generated artifacts.</li>
 <li>If you enter a name of a project that does not already exist, the wizard
 will create the project for you.</li>
-<li>Note that the only project type supported for Axis and SOAP run-time clients
-is a Web project. If you want the client to be created in a Java, EJB,
-or Application Client project, you must select the WebSphere<sup>®</sup> run-time environment for
-your client.</li>
+<li>Note that the only project type supported for Axis run-time clients
+is a Web project.</li>
 </ul>
 </li>
 </ol>
@@ -74,8 +72,7 @@
 clicking  <span class="uicontrol">Add</span>.</span></li>
 <li><span>Web Service Client Test page: Select the test facility that you
 will use to test the proxy, and the methods that you want included in the
-proxy. Note that the Universal Test Client (UTC) is only compatible with Web
-service clients deployed on WebSphere servers.</span></li>
+proxy.</span></li>
 <li><span>Click  <span class="uicontrol">Finish</span>. If you have selected to test
 the proxy, the test client will open in a browser window.</span></li>
 </ol>
diff --git a/docs/org.eclipse.jst.ws.axis.ui.doc.user/tasks/tsklwsdla.html b/docs/org.eclipse.jst.ws.axis.ui.doc.user/tasks/tsklwsdla.html
index 9d605f8..18fa575 100644
--- a/docs/org.eclipse.jst.ws.axis.ui.doc.user/tasks/tsklwsdla.html
+++ b/docs/org.eclipse.jst.ws.axis.ui.doc.user/tasks/tsklwsdla.html
@@ -77,11 +77,7 @@
 service client created. If you enter the name of an existing project, the
 project type field must match that of the existing project. If you enter a
 name of a project that does not already exist, the wizard will create the
-project for you. Note that the only project type supported for Axis and SOAP
-run-time clients is a Web project. If you want the client to be created in
-a Java,
-EJB, or Application Client project, you must select the WebSphere<sup>®</sup> run-time
-environment for your client.</span></li>
+project for you. Note that the only project type supported for Axis run-time clients is a Web project.</span></li>
 </ol>
 </li>
 <li class="stepexpand"><span>Web Services Skeleton Java Bean Configuration page: Select the
diff --git a/docs/org.eclipse.jst.ws.axis.ui.doc.user/tasks/twsbeana.html b/docs/org.eclipse.jst.ws.axis.ui.doc.user/tasks/twsbeana.html
index 79b2908..379a5f3 100644
--- a/docs/org.eclipse.jst.ws.axis.ui.doc.user/tasks/twsbeana.html
+++ b/docs/org.eclipse.jst.ws.axis.ui.doc.user/tasks/twsbeana.html
@@ -75,11 +75,8 @@
 service client created. If you enter the name of an existing project, the
 project type field must match that of the existing project. If you enter a
 name of a project that does not already exist, the wizard will create the
-project for you. Note that the only project type supported for Axis and SOAP
-run-time clients is a Web project. If you want the client to be
-created in a Java, EJB, or Application Client project, you must select
-the WebSphere<sup>®</sup> run-time
-environment for your client.</span></li>
+project for you. Note that the only project type supported for Axis
+run-time clients is a Web project.</span></li>
 <li class="substepexpand"><span>Select an existing EAR or enter a unique name to associate the
 Web service client with a different EAR than the Web service EAR. <strong>Note:</strong> Selecting
 different EARs for the Web service and Web service client can reduce the chance
diff --git a/docs/org.eclipse.jst.ws.consumption.infopop/META-INF/MANIFEST.MF b/docs/org.eclipse.jst.ws.consumption.infopop/META-INF/MANIFEST.MF
index 37986ee..d289688 100644
--- a/docs/org.eclipse.jst.ws.consumption.infopop/META-INF/MANIFEST.MF
+++ b/docs/org.eclipse.jst.ws.consumption.infopop/META-INF/MANIFEST.MF
@@ -1,8 +1,7 @@
 Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
-Bundle-Name: Web services UI
+Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.jst.ws.consumption.infopop; singleton:=true
-Bundle-Version: 1.0.0.qualifier
-Bundle-Vendor: Eclipse.org
+Bundle-Version: 1.0.2.qualifier
+Bundle-Vendor: %pluginProvider
 Bundle-Localization: plugin
-Eclipse-AutoStart: true
diff --git a/docs/org.eclipse.jst.ws.consumption.infopop/plugin.properties b/docs/org.eclipse.jst.ws.consumption.infopop/plugin.properties
new file mode 100644
index 0000000..07977b2
--- /dev/null
+++ b/docs/org.eclipse.jst.ws.consumption.infopop/plugin.properties
@@ -0,0 +1,3 @@
+! Plug-in properties
+pluginName     = Web services UI
+pluginProvider = Eclipse.org
\ No newline at end of file
diff --git a/docs/org.eclipse.jst.ws.consumption.infopop/wsconsumptionui-f1Contexts.xml b/docs/org.eclipse.jst.ws.consumption.infopop/wsconsumptionui-f1Contexts.xml
index 4550858..983b31d 100644
--- a/docs/org.eclipse.jst.ws.consumption.infopop/wsconsumptionui-f1Contexts.xml
+++ b/docs/org.eclipse.jst.ws.consumption.infopop/wsconsumptionui-f1Contexts.xml
@@ -307,7 +307,7 @@
 
 <context id="PWSM0014">
 <!-- Folder field of the Sample Page -->
-<description>Folder into which the fully qualified proxy is generated. Defaults to the source folder inside of your Web project.Folder into which the fully qualified proxy is generated. Defaults to the source folder inside of your Web project.</description>
+<description>Folder into which the fully qualified proxy is generated. Defaults to the source folder inside of your Web project.</description>
 </context>
 
 <context id="PWSM0015">
diff --git a/docs/org.eclipse.jst.ws.doc.user/META-INF/MANIFEST.MF b/docs/org.eclipse.jst.ws.doc.user/META-INF/MANIFEST.MF
index 5a44610..f76bbfa 100644
--- a/docs/org.eclipse.jst.ws.doc.user/META-INF/MANIFEST.MF
+++ b/docs/org.eclipse.jst.ws.doc.user/META-INF/MANIFEST.MF
@@ -2,7 +2,6 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.jst.ws.doc.user; singleton:=true
-Bundle-Version: 1.0.1.qualifier
+Bundle-Version: 1.0.2.qualifier
 Bundle-Vendor: %pluginProvider
 Bundle-Localization: plugin
-Eclipse-AutoStart: true
diff --git a/docs/org.eclipse.jst.ws.doc.user/concepts/csoap.html b/docs/org.eclipse.jst.ws.doc.user/concepts/csoap.html
index f923798..1ebc294 100644
--- a/docs/org.eclipse.jst.ws.doc.user/concepts/csoap.html
+++ b/docs/org.eclipse.jst.ws.doc.user/concepts/csoap.html
@@ -20,7 +20,7 @@
 <body id="csoap"><a name="csoap"><!-- --></a>
 
 <h1 class="topictitle1">Simple Object Access Protocol (SOAP)</h1>
-<div><p>Simple Object Access Protocol (SOAP) is a lightweight protocol
+<div><p>SOAP (also known as Simple Object Access Protocol) is a lightweight protocol
 for the exchange of information in a decentralized, distributed environment.
 A SOAP message is a transmission of information from a sender to a receiver.
 SOAP messages can be combined to perform request/response patterns. </p>
@@ -110,9 +110,7 @@
 with a fully qualified name is converted to a Java class and vice versa.</p>
 <p>For more
 information on Apache SOAP, refer to  <a href="http://xml.apache.org/soap" target="_blank">xml.apache.org/soap</a>  For more information on
-SOAP refer to  <a href="http://www.w3.org/TR/SOAP" target="_blank">www.w3.org/TR/SOAP</a> For
-more information on Web services and the WebSphere Application Server SOAP
-run-time, refer to the WebSphere Application Server documentation.</p>
+SOAP refer to  <a href="http://www.w3.org/TR/SOAP" target="_blank">www.w3.org/TR/SOAP</a></p>
 </div>
 </div>
 <div>
diff --git a/docs/org.eclipse.jst.ws.doc.user/concepts/cwsinwsa.html b/docs/org.eclipse.jst.ws.doc.user/concepts/cwsinwsa.html
index dcc8e07..a884a93 100644
--- a/docs/org.eclipse.jst.ws.doc.user/concepts/cwsinwsa.html
+++ b/docs/org.eclipse.jst.ws.doc.user/concepts/cwsinwsa.html
@@ -34,8 +34,7 @@
 generating a Java client proxy to Web services described in WSDL
 and in generating Java bean skeletons from WSDL.</li>
 <li> <span class="uicontrol">Deploy</span>. Deploy Web services into the WebSphere<sup>®</sup> Application
-Server or Tomcat test environments. Secure Web services running on WebSphere Application
-Server.</li>
+Server or Tomcat test environments.</li>
 <li> <span class="uicontrol">Test</span>. Test Web services running locally or remotely
 in order to get instant feedback.</li>
 <li> <span class="uicontrol">Develop</span>. Generate sample applications to assist
diff --git a/docs/org.eclipse.jst.ws.doc.user/concepts/cwsiover.html b/docs/org.eclipse.jst.ws.doc.user/concepts/cwsiover.html
index d2b1bac..3d4aa59 100644
--- a/docs/org.eclipse.jst.ws.doc.user/concepts/cwsiover.html
+++ b/docs/org.eclipse.jst.ws.doc.user/concepts/cwsiover.html
@@ -37,7 +37,7 @@
 of compliance is to generate a warning if a non WS-I SSBP complaint Web service
 option is selected and to ignore any non WS-I AP compliant selections. You
 can set the level of WS-I compliance at the workspace or project level. The
-Web services wizards, the WebSphere<sup>®</sup> run-time environments, the WSDL editor,
+Web services wizards, the WSDL editor,
 and other Web services tools provided support and encourage the development
 of WS-I compliance services.</p>
 </div>
diff --git a/docs/org.eclipse.jst.ws.doc.user/ref/rwspref.html b/docs/org.eclipse.jst.ws.doc.user/ref/rwspref.html
index bbdafc3..94e72b5 100644
--- a/docs/org.eclipse.jst.ws.doc.user/ref/rwspref.html
+++ b/docs/org.eclipse.jst.ws.doc.user/ref/rwspref.html
@@ -22,7 +22,7 @@
 <h1 class="topictitle1">Web services preferences</h1>
 <div><div class="section"><div class="p">To set any of the Web services preferences, follow these steps:<ol><li>Click  <span class="uicontrol">Window &gt; Preferences</span> to open the Preferences
 notebook.</li>
-<li>Expand  <span class="uicontrol">Web services</span>, and click the preference
+<li>Expand  <span class="uicontrol">Web services</span> or <span class="uicontrol">Web and XML</span>, and click the preference
 category that you want to set</li>
 <li>Select the check boxes that you want to set as the default when creating
 your Web service.</li>
@@ -39,6 +39,17 @@
 dialogs by selecting "Do not show this dialog again" on the first page of
 a Web services wizard, you can undo your change by clearing the check box
 beside the dialog that you have chosen to hide.</dd>
+<dt class="dlterm">Profile Compliance and Validation</dt>
+<dd>The Profile Compliance preferences allow you to select your level of compliance
+with the WS-I Simple SOAP Binding Profile (SSBP) and WS-I Attachement Profile
+(AP). Note: if you change the level of WS-I compliance while WS-I incompliances
+are listed in the Task view, the Task view will not be automatically updated.
+The workspace must be revalidated before the warnings will be removed from
+the Task view. For more information on WS-I, refer to: <a href="http://www.ws-i.org/" target="_blank">http://www.ws-i.org/</a>
+<p>For validation preferences, you can choose whether
+or not WSDL files consumed by the Web services wizards are validated, and
+whether or not the WSDL validation must complete before the wizard will move
+to the next step.</p></dd>
 <dt class="dlterm">Project Topology</dt>
 <dd>The Project Topology preferences allow you to:<ul><li>Select the default client project type that the Web services wizards will
 create when generating a Web service client. You can also set the order in
@@ -80,13 +91,6 @@
 <dd>When creating a WSDL file in the WSDL editor, you can set the default
 target namespace. If you do not select to change the default, your WSDL file
 will have http://tempuri.org as its target namespace.</dd>
-<dt class="dlterm">WS-I Compliance</dt>
-<dd>The WS-I Compliance preferences allow you to select your level of compliance
-with the WS-I Simple SOAP Binding Profile (SSBP) and WS-I Attachement Profile
-(AP). Note: if you change the level of WS-I compliance while WS-I incompliances
-are listed in the Task view, the Task view will not be automatically updated.
-The workspace must be revalidated before the warnings will be removed from
-the Task view. For more information on WS-I, refer to: </dd>
 </dl>
 </div>
 </div>
diff --git a/docs/org.eclipse.jst.ws.doc.user/tasks/twsicomply.html b/docs/org.eclipse.jst.ws.doc.user/tasks/twsicomply.html
index 6e4099b..fe21e4d 100644
--- a/docs/org.eclipse.jst.ws.doc.user/tasks/twsicomply.html
+++ b/docs/org.eclipse.jst.ws.doc.user/tasks/twsicomply.html
@@ -50,7 +50,7 @@
 <ol><li><span>From the  <strong>Window</strong> menu, select  <strong>Preferences</strong>.</span></li>
 <li><span>Select  <strong>Web Services</strong> from the component tree on the left-hand
 side of the panel.</span></li>
-<li><span>Under WS-I compliance, select the level of compliance you want
+<li><span>Under Profile Compliance and Validation, select the level of compliance you want
 from the drop-down lists.</span></li>
 <li><span>Click  <strong>Apply</strong>, then click  <strong>OK</strong>.</span></li>
 </ol>
@@ -60,9 +60,9 @@
 <div><div class="section"><p>To set the level of WS-I compliance for a project:</p>
 </div>
 <ol><li><span>In the Project Navigator, right click and select  <strong>Properties</strong>.</span></li>
-<li><span>Select  <strong>WS-I Compliance</strong> from the component tree on the left-hand
+<li><span>Select  <strong>Profile Compliance and Validation</strong> from the component tree on the left-hand
 side of the panel.</span></li>
-<li><span>Under WS-I compliance, select the level of compliance you want
+<li><span>Select the level of compliance you want
 from the drop-down lists, or select to have the project share the same level
 of WS-I compliance as the workspace</span></li>
 <li><span>Click  <strong>Apply</strong>, then click  <strong>OK</strong>.</span></li>
diff --git a/docs/org.eclipse.wst.command.env.infopop/.project b/docs/org.eclipse.wst.command.env.infopop/.project
new file mode 100644
index 0000000..71b83fe
--- /dev/null
+++ b/docs/org.eclipse.wst.command.env.infopop/.project
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.wst.command.env.infopop</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+	</natures>
+</projectDescription>
diff --git a/docs/org.eclipse.wst.command.env.infopop/META-INF/MANIFEST.MF b/docs/org.eclipse.wst.command.env.infopop/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..2e8b143
--- /dev/null
+++ b/docs/org.eclipse.wst.command.env.infopop/META-INF/MANIFEST.MF
@@ -0,0 +1,8 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.wst.command.env.infopop; singleton:=true
+Bundle-Version: 1.0.2.qualifier
+Bundle-Vendor: %pluginProvider
+Bundle-Localization: plugin
+Eclipse-LazyStart: true
diff --git a/docs/org.eclipse.wst.command.env.infopop/about.html b/docs/org.eclipse.wst.command.env.infopop/about.html
new file mode 100644
index 0000000..4c99086
--- /dev/null
+++ b/docs/org.eclipse.wst.command.env.infopop/about.html
@@ -0,0 +1,22 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+<html>
+<head>
+<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
+<title>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+ 
+<p>February 24, 2005</p>	
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content.  Check the Redistributor's license that was provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content.</p>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.command.env.infopop/build.properties b/docs/org.eclipse.wst.command.env.infopop/build.properties
new file mode 100644
index 0000000..b9f56eb
--- /dev/null
+++ b/docs/org.eclipse.wst.command.env.infopop/build.properties
@@ -0,0 +1,6 @@
+bin.includes = about.html,\
+               plugin.xml,\
+               wst-command-f1.xml,\
+               META-INF/,\
+               plugin.properties
+src.includes = build.properties
diff --git a/docs/org.eclipse.wst.command.env.infopop/plugin.properties b/docs/org.eclipse.wst.command.env.infopop/plugin.properties
new file mode 100644
index 0000000..14eef62
--- /dev/null
+++ b/docs/org.eclipse.wst.command.env.infopop/plugin.properties
@@ -0,0 +1,3 @@
+! plug-in properties
+pluginName     = Web services UI
+pluginProvider = Eclipse.org
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.command.env.infopop/plugin.xml b/docs/org.eclipse.wst.command.env.infopop/plugin.xml
new file mode 100644
index 0000000..7870c05
--- /dev/null
+++ b/docs/org.eclipse.wst.command.env.infopop/plugin.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" ?>
+<?eclipse version="3.0"?>
+<?NLS TYPE="org.eclipse.help.toc"?> 
+<!-- /*******************************************************************************
+ * Copyright (c) 2000, 2005 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
+ * http://www.eclipse.org/legal/epl-v10.html
+ * 
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *******************************************************************************/ -->
+<plugin>
+	<extension point="org.eclipse.help.contexts">
+		<contexts file="wst-command-f1.xml" plugin="org.eclipse.wst.command.env.ui"/>
+	</extension>
+</plugin>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.command.env.infopop/wst-command-f1.xml b/docs/org.eclipse.wst.command.env.infopop/wst-command-f1.xml
new file mode 100644
index 0000000..0c63c64
--- /dev/null
+++ b/docs/org.eclipse.wst.command.env.infopop/wst-command-f1.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?NLS TYPE="org.eclipse.help.contexts"?>
+<contexts>
+
+<!--org.eclipse.wst.command.env.ui-->
+<context id="PPAD0001">
+<!--Action Dialogs Preference Page-->
+<description>You can use this page to choose which Web services popup actions are displayed or hidden. When using the Web services wizards launced from a popup menu you may see a check box that gives you the option of hiding the popup action that you have just performed. If you select that checkbox it will select the respective checkbox on this preference page. If you have chosen to hide a popup action that you want to display use this page to make the popup action visible.
+</description>
+</context>
+
+<context id="PPAD0002">
+<!--show all check box on the Action Dialogs Preference Page-->
+<description>By selecting this checkbox, all valid Web services popup actions will be displayed when you select a file in your workspace and right-click it. Alternately you can select to display or hide individual popup actions.
+</description>
+</context>
+
+<context id="PPAD0003">
+<!--hide all check box on the Action Dialogs Preference Page-->
+<description>By selecting this checkbox, all Web services popup actions will be hidden when you select a file in your workspace and right-click it. Alternately you can select to display or hide individual popup actions.
+</description>
+</context>
+
+<context id="TWP0001">
+<!--show/hide check box-->
+<description>When using the Web services wizards launced from a popup menu, this check box that gives you the option of hiding the popup action that you have just performed. If you select the checkbox it will select the respective checkbox on the Web services > Popup Dialog Selection preference page. If you have chosen to hide a popup action that you want to display, go to Window > Preferences > Web services > Popup Dialog Selection, and use this page to make the popup action visible.
+</description>
+</context>
+
+</contexts>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.ws.infopop/build.properties b/docs/org.eclipse.wst.ws.infopop/build.properties
index 82d0318..31a159b 100644
--- a/docs/org.eclipse.wst.ws.infopop/build.properties
+++ b/docs/org.eclipse.wst.ws.infopop/build.properties
@@ -1,5 +1,6 @@
 bin.includes = about.html,\
                plugin.xml,\
                webserviceui-f1Contexts.xml,\
-               META-INF/
+               META-INF/,\
+               plugin.properties
 src.includes = build.properties
diff --git a/docs/org.eclipse.wst.wsi.ui.doc.user/META-INF/MANIFEST.MF b/docs/org.eclipse.wst.wsi.ui.doc.user/META-INF/MANIFEST.MF
index 9fa7da3..0c0d40d 100644
--- a/docs/org.eclipse.wst.wsi.ui.doc.user/META-INF/MANIFEST.MF
+++ b/docs/org.eclipse.wst.wsi.ui.doc.user/META-INF/MANIFEST.MF
@@ -2,7 +2,6 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.wst.wsi.ui.doc.user; singleton:=true
-Bundle-Version: 1.0.1.qualifier
+Bundle-Version: 1.0.2.qualifier
 Bundle-Vendor: %pluginProvider
 Bundle-Localization: plugin
-Eclipse-AutoStart: true
diff --git a/docs/org.eclipse.wst.wsi.ui.doc.user/build.properties b/docs/org.eclipse.wst.wsi.ui.doc.user/build.properties
index 74019f0..c11e86f 100644
--- a/docs/org.eclipse.wst.wsi.ui.doc.user/build.properties
+++ b/docs/org.eclipse.wst.wsi.ui.doc.user/build.properties
@@ -1,5 +1,4 @@
 bin.includes = about.html,\
-               concepts/,\
                images/,\
                plugin.xml,\
                tasks/,\
diff --git a/docs/org.eclipse.wst.wsi.ui.doc.user/tasks/tmonitor.html b/docs/org.eclipse.wst.wsi.ui.doc.user/tasks/tmonitor.html
index 81fe615..0d58ba4 100644
--- a/docs/org.eclipse.wst.wsi.ui.doc.user/tasks/tmonitor.html
+++ b/docs/org.eclipse.wst.wsi.ui.doc.user/tasks/tmonitor.html
@@ -31,13 +31,9 @@
 Alternately, you can set up the TCP/IP Monitor manually by completing the
 following steps:</p>
 </div>
-<ol><li class="stepexpand"><span>In the sample application, invoke the getEndPoint method. Record
-this endpoint. The default endpoint for a Web service is: </span> <ul><li>WebSphere<sup>®</sup> or
-Apache Axis run-time environment: http://localhost:&lt;port&gt;/&lt;web module
-context root&gt;/services/&lt;port&gt;</li>
-<li>IBM<sup>®</sup> SOAP
-run-time environment: http://localhost:&lt;port&gt;/&lt;web module context root&gt;/servlet/rpcrouter.</li>
-</ul>
+<ol><li class="stepexpand">In the sample application, invoke the getEndPoint method. Record
+this endpoint. The default endpoint for a Web service is: http://localhost:&lt;port&gt;/&lt;web module
+context root&gt;/services/&lt;port&gt;
 </li>
 <li class="stepexpand"><span>Create a server to act as the TCP/IP Monitor:</span><ol type="a"><li><span>From the Window menu, select <span class="uicontrol">Preferences</span>. </span></li>
 <li><span>In the Preferences window, expand Internet and then select <span class="uicontrol">TCP/IP
diff --git a/features/org.eclipse.wst.ws_core.feature/feature.xml b/features/org.eclipse.wst.ws_core.feature/feature.xml
index 6a23955..4d2f726 100644
--- a/features/org.eclipse.wst.ws_core.feature/feature.xml
+++ b/features/org.eclipse.wst.ws_core.feature/feature.xml
@@ -1,14 +1,15 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <feature
       id="org.eclipse.wst.ws_core.feature"
-      label="org.eclipse.wst.ws_core.feature"
-      version="1.0.100.qualifier">
+      label="WST WS Core Feature"
+      version="1.0.3.qualifier"
+      provider-name="Eclipse.org">
 
    <description>
       %description
    </description>
 
-   <license url="license.html">
+   <license url="license.html"> 
       %license
    </license>
 
@@ -18,11 +19,11 @@
       <import feature="org.uddi4j.feature" version="2.0.3" match="greaterOrEqual"/>
       <import feature="org.wsdl4j.feature" version="1.4.0" match="greaterOrEqual"/>
       <import feature="org.apache.xerces.feature" version="2.7.0" match="greaterOrEqual"/>
-      <import feature="org.eclipse.platform" version="3.2" match="equivalent"/>
-      <import feature="org.eclipse.emf" version="2.2" match="equivalent"/>
-      <import feature="org.eclipse.wst.common_core.feature" version="1.0.0" match="equivalent"/>
-      <import feature="org.eclipse.wst.server_core.feature" version="1.0.0" match="equivalent"/>
-      <import feature="org.eclipse.xsd" version="2.2" match="equivalent"/>
+      <import feature="org.eclipse.platform" version="3.1.1" match="equivalent"/>
+      <import feature="org.eclipse.emf" version="2.1.1" match="equivalent"/>
+      <import feature="org.eclipse.wst.common_core.feature" version="1.0.3" match="equivalent"/>
+      <import feature="org.eclipse.wst.server_core.feature" version="1.0.3" match="equivalent"/>
+      <import feature="org.eclipse.xsd" version="2.1.1" match="equivalent"/>
    </requires>
 
    <plugin
diff --git a/features/org.eclipse.wst.ws_core.feature/sourceTemplateFeature/eclipse_update_120.jpg b/features/org.eclipse.wst.ws_core.feature/sourceTemplateFeature/eclipse_update_120.jpg
index 17bb8e3..bfdf708 100644
--- a/features/org.eclipse.wst.ws_core.feature/sourceTemplateFeature/eclipse_update_120.jpg
+++ b/features/org.eclipse.wst.ws_core.feature/sourceTemplateFeature/eclipse_update_120.jpg
Binary files differ
diff --git a/features/org.eclipse.wst.ws_core.feature/sourceTemplateFeature/feature.properties b/features/org.eclipse.wst.ws_core.feature/sourceTemplateFeature/feature.properties
index 64893f7..bcbf9b0 100644
--- a/features/org.eclipse.wst.ws_core.feature/sourceTemplateFeature/feature.properties
+++ b/features/org.eclipse.wst.ws_core.feature/sourceTemplateFeature/feature.properties
@@ -15,6 +15,7 @@
 # This file should be translated.
 
 # "featureName" property - name of the feature
+featureName=Source for WST WS Core Feature
 
 # "providerName" property - name of the company that provides the feature
 providerName=Eclipse.org
diff --git a/features/org.eclipse.wst.ws_core.feature/sourceTemplateFeature/feature.xml b/features/org.eclipse.wst.ws_core.feature/sourceTemplateFeature/feature.xml
new file mode 100644
index 0000000..ecd3248
--- /dev/null
+++ b/features/org.eclipse.wst.ws_core.feature/sourceTemplateFeature/feature.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+      id="org.eclipse.wst.ws_core.feature.source"
+      label="%featureName"
+      version="1.0.3.qualifier"
+      provider-name="%providerName">
+
+   <description>
+      %description
+   </description>
+ 
+   <copyright>
+      %copyright
+   </copyright>
+
+   <license url="license.html">
+      %license
+   </license>
+
+   <url>
+      <update label="Web Tools Platform (WTP) Updates" url="http://download.eclipse.org/webtools/updates/"/>
+   </url>
+
+
+
+   <plugin
+         id="org.eclipse.wst.ws_core.feature.source"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"/>
+
+</feature>
diff --git a/features/org.eclipse.wst.ws_core.feature/sourceTemplatePlugin/about.properties b/features/org.eclipse.wst.ws_core.feature/sourceTemplatePlugin/about.properties
index 88a06c5..290da85 100644
--- a/features/org.eclipse.wst.ws_core.feature/sourceTemplatePlugin/about.properties
+++ b/features/org.eclipse.wst.ws_core.feature/sourceTemplatePlugin/about.properties
@@ -16,7 +16,7 @@
 #
 # Do not translate any values surrounded by {}
 
-blurb=Web Standard Tools SDK\n\
+blurb=Web Standard Tools - Web Service Core\n\
 \n\
 Version: {featureVersion}\n\
 Build id: {0}\n\
diff --git a/features/org.eclipse.wst.ws_core.feature/sourceTemplatePlugin/eclipse32.gif b/features/org.eclipse.wst.ws_core.feature/sourceTemplatePlugin/eclipse32.gif
index 0282f5d..e6ad7cc 100644
--- a/features/org.eclipse.wst.ws_core.feature/sourceTemplatePlugin/eclipse32.gif
+++ b/features/org.eclipse.wst.ws_core.feature/sourceTemplatePlugin/eclipse32.gif
Binary files differ
diff --git a/features/org.eclipse.wst.ws_core.feature/sourceTemplatePlugin/plugin.properties b/features/org.eclipse.wst.ws_core.feature/sourceTemplatePlugin/plugin.properties
index 165af04..2139d0f 100644
--- a/features/org.eclipse.wst.ws_core.feature/sourceTemplatePlugin/plugin.properties
+++ b/features/org.eclipse.wst.ws_core.feature/sourceTemplatePlugin/plugin.properties
@@ -8,5 +8,5 @@
 # Contributors:
 #     IBM Corporation - initial API and implementation
 ###############################################################################
-pluginName=Web Standard Tools SDK - Common Component
+pluginName=Web Standard Tools - Web Service Core Source
 providerName=Eclipse.org
diff --git a/features/org.eclipse.wst.ws_sdk.feature/feature.xml b/features/org.eclipse.wst.ws_sdk.feature/feature.xml
index 243370d..6c863bc 100644
--- a/features/org.eclipse.wst.ws_sdk.feature/feature.xml
+++ b/features/org.eclipse.wst.ws_sdk.feature/feature.xml
@@ -1,8 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <feature
       id="org.eclipse.wst.ws_sdk.feature"
-      label="org.eclipse.wst.ws_sdk.feature"
-      version="1.0.100.qualifier">
+      label="WST WS SDK Feature"
+      version="1.0.3.qualifier"
+      provider-name="Eclipse.org">
 
    <description>
       %description
@@ -12,6 +13,10 @@
       %license
    </license>
 
+   <url>
+      <update label="Web Tools Platform (WTP) Updates" url="http://download.eclipse.org/webtools/updates/"/>
+   </url>
+
    <includes
          id="org.eclipse.wst.ws_ui.feature.source"
          version="0.0.0"/>
diff --git a/features/org.eclipse.wst.ws_ui.feature/feature.xml b/features/org.eclipse.wst.ws_ui.feature/feature.xml
index e7961c1..17ee3ab 100644
--- a/features/org.eclipse.wst.ws_ui.feature/feature.xml
+++ b/features/org.eclipse.wst.ws_ui.feature/feature.xml
@@ -1,8 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <feature
       id="org.eclipse.wst.ws_ui.feature"
-      label="org.eclipse.wst.ws_ui.feature"
-      version="1.0.100.qualifier">
+      label="WST WS UI Feature"
+      version="1.0.3.qualifier"
+      provider-name="Eclipse.org">
 
    <description>
       %description
@@ -12,13 +13,17 @@
       %license
    </license>
 
+   <url>
+      <update label="Web Tools Platform (WTP) Updates" url="http://download.eclipse.org/webtools/updates/"/>
+   </url>
+
    <includes
          id="org.eclipse.wst.ws_userdoc.feature"
          version="0.0.0"/>
 
    <requires>
-      <import feature="org.eclipse.gef" version="3.2" match="equivalent"/>
-      <import feature="org.eclipse.wst.ws_core.feature" version="1.0.0" match="equivalent"/>
+      <import feature="org.eclipse.gef" version="3.1.1" match="equivalent"/>
+      <import feature="org.eclipse.wst.ws_core.feature" version="1.0.2" match="equivalent"/>
    </requires>
 
    <plugin
diff --git a/features/org.eclipse.wst.ws_ui.feature/sourceTemplateFeature/eclipse_update_120.jpg b/features/org.eclipse.wst.ws_ui.feature/sourceTemplateFeature/eclipse_update_120.jpg
index 17bb8e3..bfdf708 100644
--- a/features/org.eclipse.wst.ws_ui.feature/sourceTemplateFeature/eclipse_update_120.jpg
+++ b/features/org.eclipse.wst.ws_ui.feature/sourceTemplateFeature/eclipse_update_120.jpg
Binary files differ
diff --git a/features/org.eclipse.wst.ws_ui.feature/sourceTemplateFeature/feature.xml b/features/org.eclipse.wst.ws_ui.feature/sourceTemplateFeature/feature.xml
index 8a6d6fc..a66072e 100644
--- a/features/org.eclipse.wst.ws_ui.feature/sourceTemplateFeature/feature.xml
+++ b/features/org.eclipse.wst.ws_ui.feature/sourceTemplateFeature/feature.xml
@@ -1,27 +1,38 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <feature
-	primary="false"
-	label="org.eclipse.wst.ws_ui.feature.source"
-	id="org.eclipse.wst.ws_ui.feature.source"
-	version="1.0.0">
-	<description>
-		%description
-	</description>
-	<copyright url="http://www.example.com/copyright">
-		%copyright
-	</copyright>
-	<license url="license.html">%license</license>
-	
-	<includes
+      id="org.eclipse.wst.ws_ui.feature.source"
+      label="Source for WST WS UI Feature"
+      version="1.0.3.qualifier"
+      provider-name="Eclipse.org">
+
+   <description>
+      %description
+   </description>
+
+   <copyright>
+      %copyright
+   </copyright>
+
+   <license url="license.html">
+      %license
+   </license>
+
+   <url>
+      <update label="Web Tools Platform (WTP) Updates" url="http://download.eclipse.org/webtools/updates/"/>
+   </url>
+
+   <includes
          id="org.eclipse.wst.ws_core.feature"
          version="0.0.0"/>
-   	<includes
+
+   <includes
          id="org.eclipse.wst.ws_core.feature.source"
          version="0.0.0"/>
-    <plugin
+
+   <plugin
          id="org.eclipse.wst.ws_ui.feature.source"
          download-size="0"
          install-size="0"
-         version="0.0.0"/>   
-                          
+         version="0.0.0"/>
+
 </feature>
diff --git a/features/org.eclipse.wst.ws_ui.feature/sourceTemplatePlugin/about.properties b/features/org.eclipse.wst.ws_ui.feature/sourceTemplatePlugin/about.properties
index 88a06c5..339787a 100644
--- a/features/org.eclipse.wst.ws_ui.feature/sourceTemplatePlugin/about.properties
+++ b/features/org.eclipse.wst.ws_ui.feature/sourceTemplatePlugin/about.properties
@@ -16,7 +16,7 @@
 #
 # Do not translate any values surrounded by {}
 
-blurb=Web Standard Tools SDK\n\
+blurb=Web Standard Tools - Web Service UI\n\
 \n\
 Version: {featureVersion}\n\
 Build id: {0}\n\
diff --git a/features/org.eclipse.wst.ws_ui.feature/sourceTemplatePlugin/eclipse32.gif b/features/org.eclipse.wst.ws_ui.feature/sourceTemplatePlugin/eclipse32.gif
index 0282f5d..e6ad7cc 100644
--- a/features/org.eclipse.wst.ws_ui.feature/sourceTemplatePlugin/eclipse32.gif
+++ b/features/org.eclipse.wst.ws_ui.feature/sourceTemplatePlugin/eclipse32.gif
Binary files differ
diff --git a/features/org.eclipse.wst.ws_ui.feature/sourceTemplatePlugin/plugin.properties b/features/org.eclipse.wst.ws_ui.feature/sourceTemplatePlugin/plugin.properties
index be01280..63a6545 100644
--- a/features/org.eclipse.wst.ws_ui.feature/sourceTemplatePlugin/plugin.properties
+++ b/features/org.eclipse.wst.ws_ui.feature/sourceTemplatePlugin/plugin.properties
@@ -8,5 +8,5 @@
 # Contributors:
 #     IBM Corporation - initial API and implementation
 ###############################################################################
-pluginName=Web Standard Tools SDK - WST Web Component
+pluginName=Web Standard Tools - Web Service UI Source
 providerName=Eclipse.org
diff --git a/features/org.eclipse.wst.ws_userdoc.feature/feature.xml b/features/org.eclipse.wst.ws_userdoc.feature/feature.xml
index 9e3ddbe..fc00d92 100644
--- a/features/org.eclipse.wst.ws_userdoc.feature/feature.xml
+++ b/features/org.eclipse.wst.ws_userdoc.feature/feature.xml
@@ -1,8 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <feature
       id="org.eclipse.wst.ws_userdoc.feature"
-      label="org.eclipse.wst.ws_userdoc.feature"
-      version="1.0.100.qualifier">
+      label="User Documentation for WST WS Feature"
+      version="1.0.2.qualifier"
+      provider-name="Eclipse.org">
 
    <description>
       %description
@@ -12,6 +13,10 @@
       %license
    </license>
 
+   <url>
+      <update label="Web Tools Platform (WTP) Updates" url="http://download.eclipse.org/webtools/updates/"/>
+   </url>
+
    <includes
          id="org.eclipse.wst.xml_userdoc.feature"
          version="0.0.0"/>
diff --git a/tests/org.eclipse.wst.wsdl.tests/src/org/eclipse/wst/wsdl/tests/AllTestCases.java b/tests/org.eclipse.wst.wsdl.tests/src/org/eclipse/wst/wsdl/tests/AllTestCases.java
index 5fee2e1..eadd168 100644
--- a/tests/org.eclipse.wst.wsdl.tests/src/org/eclipse/wst/wsdl/tests/AllTestCases.java
+++ b/tests/org.eclipse.wst.wsdl.tests/src/org/eclipse/wst/wsdl/tests/AllTestCases.java
@@ -33,8 +33,7 @@
   {
     TestSuite suite = new TestSuite();
     
-    // Bug 123547 - comment out this test for now.
-    // suite.addTest(InlineSchemaTest.suite());  
+    suite.addTest(InlineSchemaTest.suite());  
     suite.addTest(LoadAndSerializationTest.suite());
     suite.addTest(SemanticTest.suite());
     suite.addTest(WSDLGenerationTest.suite());
diff --git a/tests/org.eclipse.wst.wsdl.tests/src/org/eclipse/wst/wsdl/tests/WSDLEMFAPITest.java b/tests/org.eclipse.wst.wsdl.tests/src/org/eclipse/wst/wsdl/tests/WSDLEMFAPITest.java
index ed994b2..1ddb8c4 100644
--- a/tests/org.eclipse.wst.wsdl.tests/src/org/eclipse/wst/wsdl/tests/WSDLEMFAPITest.java
+++ b/tests/org.eclipse.wst.wsdl.tests/src/org/eclipse/wst/wsdl/tests/WSDLEMFAPITest.java
@@ -66,6 +66,7 @@
 import org.eclipse.wst.wsdl.tests.util.DefinitionVisitor;
 import org.eclipse.wst.wsdl.util.WSDLResourceImpl;
 import org.eclipse.xsd.XSDPackage;
+import org.eclipse.xsd.XSDSchema;
 import org.eclipse.xsd.util.XSDResourceFactoryImpl;
 import org.w3c.dom.Element;
 
diff --git a/tests/org.eclipse.wst.wsdl.validation.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.wst.wsdl.validation.tests/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..844127e
--- /dev/null
+++ b/tests/org.eclipse.wst.wsdl.validation.tests/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,12 @@
+#Fri Feb 17 14:23:59 EST 2006
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.4
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
+org.eclipse.jdt.core.compiler.source=1.3
diff --git a/bundles/org.eclipse.wst.wsdl.ui/.settings/org.eclipse.jdt.ui.prefs b/tests/org.eclipse.wst.wsdl.validation.tests/.settings/org.eclipse.jdt.ui.prefs
similarity index 68%
rename from bundles/org.eclipse.wst.wsdl.ui/.settings/org.eclipse.jdt.ui.prefs
rename to tests/org.eclipse.wst.wsdl.validation.tests/.settings/org.eclipse.jdt.ui.prefs
index bbf7ac8..9a56f5f 100644
--- a/bundles/org.eclipse.wst.wsdl.ui/.settings/org.eclipse.jdt.ui.prefs
+++ b/tests/org.eclipse.wst.wsdl.validation.tests/.settings/org.eclipse.jdt.ui.prefs
@@ -1,3 +1,3 @@
-#Mon Jan 30 23:38:15 EST 2006
+#Fri Feb 17 14:23:59 EST 2006
 eclipse.preferences.version=1
 internal.default.compliance=default
diff --git a/tests/org.eclipse.wst.wsdl.validation.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.wst.wsdl.validation.tests/META-INF/MANIFEST.MF
index a46a44b..68f7912 100644
--- a/tests/org.eclipse.wst.wsdl.validation.tests/META-INF/MANIFEST.MF
+++ b/tests/org.eclipse.wst.wsdl.validation.tests/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: WSDL Validator Tests Plug-in
 Bundle-SymbolicName: org.eclipse.wst.wsdl.validation.tests
-Bundle-Version: 1.0.1
+Bundle-Version: 1.0.2
 Bundle-ClassPath: wsdlvalidatetests.jar
 Bundle-Activator: org.eclipse.wst.wsdl.validation.tests.internal.WSDLValidatorTestsPlugin
 Bundle-Vendor: Eclipse
@@ -16,5 +16,11 @@
  org.eclipse.wst.command.env.core,
  org.eclipse.wst.command.env,
  org.apache.ant,
- org.wsdl4j
+ org.wsdl4j, 
+ org.apache.xerces
 Eclipse-AutoStart: true
+Export-Package: org.eclipse.wst.wsdl.validation.internal.resolver;x-internal:=true,
+ org.eclipse.wst.wsdl.validation.internal.ui.ant;x-internal:=true,
+ org.eclipse.wst.wsdl.validation.internal.wsdl11.xsd;x-internal:=true,
+ org.eclipse.wst.wsdl.validation.internal.xml;x-internal:=true,
+ org.eclipse.wst.wsdl.validation.tests.internal;x-internal:=true
diff --git a/tests/org.eclipse.wst.wsdl.validation.tests/src/org/eclipse/wst/wsdl/validation/tests/internal/WSDLTest.java b/tests/org.eclipse.wst.wsdl.validation.tests/src/org/eclipse/wst/wsdl/validation/tests/internal/WSDLTest.java
index 020d31e..a1fa078 100644
--- a/tests/org.eclipse.wst.wsdl.validation.tests/src/org/eclipse/wst/wsdl/validation/tests/internal/WSDLTest.java
+++ b/tests/org.eclipse.wst.wsdl.validation.tests/src/org/eclipse/wst/wsdl/validation/tests/internal/WSDLTest.java
@@ -522,4 +522,30 @@
     
     runTest(testfile, loglocation, idealloglocation);
   }
+  
+  /**
+   * Test /WSDL/NamespaceDoesntResolve/NamespaceDoesntResolve.wsdl
+   */
+  public void testNamespaceDoesntResolve()
+  {
+    String testname = "NamespaceDoesntResolve";
+    String testfile = FILE_PROTOCOL + PLUGIN_ABSOLUTE_PATH + SAMPLES_DIR + WSDL_DIR + "NamespaceDoesntResolve/" + testname + ".wsdl";
+    String loglocation = PLUGIN_ABSOLUTE_PATH + GENERATED_RESULTS_DIR + WSDL_DIR + "NamespaceDoesntResolve/" + testname + ".wsdl-log";
+    String idealloglocation = PLUGIN_ABSOLUTE_PATH + IDEAL_RESULTS_DIR + WSDL_DIR + "NamespaceDoesntResolve/" + testname + ".wsdl-log";
+    
+    runTest(testfile, loglocation, idealloglocation);
+  }
+  
+  /**
+   * Test /WSDL/NamespaceResolvesHTML/NamespaceResolvesHTML.wsdl
+   */
+  public void testNamespaceResolvesHTML()
+  {
+    String testname = "NamespaceResolvesHTML";
+    String testfile = FILE_PROTOCOL + PLUGIN_ABSOLUTE_PATH + SAMPLES_DIR + WSDL_DIR + "NamespaceResolvesHTML/" + testname + ".wsdl";
+    String loglocation = PLUGIN_ABSOLUTE_PATH + GENERATED_RESULTS_DIR + WSDL_DIR + "NamespaceResolvesHTML/" + testname + ".wsdl-log";
+    String idealloglocation = PLUGIN_ABSOLUTE_PATH + IDEAL_RESULTS_DIR + WSDL_DIR + "NamespaceResolvesHTML/" + testname + ".wsdl-log";
+    
+    runTest(testfile, loglocation, idealloglocation);
+  }
 }
diff --git a/tests/org.eclipse.wst.wsdl.validation.tests/testresources/idealResults/WSDL/NamespaceDoesntResolve/NamespaceDoesntResolve.wsdl-log b/tests/org.eclipse.wst.wsdl.validation.tests/testresources/idealResults/WSDL/NamespaceDoesntResolve/NamespaceDoesntResolve.wsdl-log
new file mode 100644
index 0000000..aa2b361
--- /dev/null
+++ b/tests/org.eclipse.wst.wsdl.validation.tests/testresources/idealResults/WSDL/NamespaceDoesntResolve/NamespaceDoesntResolve.wsdl-log
@@ -0,0 +1,8 @@
+number of errors      : 0
+number of warnings    : 0
+
+------------error list-------------------------------------------
+(none)
+------------warning list-----------------------------------------
+(none)
+-----------------------------------------------------------------
diff --git a/tests/org.eclipse.wst.wsdl.validation.tests/testresources/idealResults/WSDL/NamespaceResolvesHTML/NamespaceResolvesHTML.wsdl-log b/tests/org.eclipse.wst.wsdl.validation.tests/testresources/idealResults/WSDL/NamespaceResolvesHTML/NamespaceResolvesHTML.wsdl-log
new file mode 100644
index 0000000..aa2b361
--- /dev/null
+++ b/tests/org.eclipse.wst.wsdl.validation.tests/testresources/idealResults/WSDL/NamespaceResolvesHTML/NamespaceResolvesHTML.wsdl-log
@@ -0,0 +1,8 @@
+number of errors      : 0
+number of warnings    : 0
+
+------------error list-------------------------------------------
+(none)
+------------warning list-----------------------------------------
+(none)
+-----------------------------------------------------------------
diff --git a/tests/org.eclipse.wst.wsdl.validation.tests/testresources/samples/WSDL/NamespaceDoesntResolve/NamespaceDoesntResolve.wsdl b/tests/org.eclipse.wst.wsdl.validation.tests/testresources/samples/WSDL/NamespaceDoesntResolve/NamespaceDoesntResolve.wsdl
new file mode 100644
index 0000000..c9e74c5
--- /dev/null
+++ b/tests/org.eclipse.wst.wsdl.validation.tests/testresources/samples/WSDL/NamespaceDoesntResolve/NamespaceDoesntResolve.wsdl
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://www.example.org/NamespaceDoesntResolve/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="NamespaceDoesntResolve" targetNamespace="http://www.example.org/NamespaceDoesntResolve/">
+<wsdl:documentation>
+	This WSDL document tests that an element specified for a different namespace
+	that does not resolve to any resource validates correctly.
+</wsdl:documentation>
+<wsdl:types>
+<xsd:schema targetNamespace="http://www.example.org/NamespaceDoesntResolve/">
+<xsd:element name="NewOperationResponse" type="xsd:string"/>
+<xsd:element name="NewOperationRequest" type="xsd:string"/>
+</xsd:schema>
+</wsdl:types>
+<wsdl:message name="NewOperationResponse">
+<wsdl:part element="tns:NewOperationResponse" name="NewOperationResponse"/>
+</wsdl:message>
+<wsdl:message name="NewOperationRequest">
+<wsdl:part element="tns:NewOperationRequest" name="NewOperationRequest"/>
+</wsdl:message>
+<wsdl:portType name="NamespaceDoesntResolve">
+<wsdl:operation name="NewOperation">
+<wsdl:input message="tns:NewOperationRequest"/>
+<wsdl:output message="tns:NewOperationResponse"/>
+</wsdl:operation>
+</wsdl:portType>
+<wsdl:binding name="NamespaceDoesntResolveSOAP" type="tns:NamespaceDoesntResolve">
+<ext:element xmlns:ext="http://schemas.nonexistantdomain.ned/element"/>
+<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+<wsdl:operation name="NewOperation">
+<soap:operation soapAction="http://www.example.org/NamespaceDoesntResolve/NewOperation"/>
+<wsdl:input>
+<soap:body parts=" NewOperationRequest" use="literal"/>
+</wsdl:input>
+<wsdl:output>
+<soap:body parts=" NewOperationResponse" use="literal"/>
+</wsdl:output>
+</wsdl:operation>
+</wsdl:binding>
+<wsdl:service name="NamespaceDoesntResolve">
+<wsdl:port binding="tns:NamespaceDoesntResolveSOAP" name="NamespaceDoesntResolveSOAP">
+<soap:address location="http://www.example.org/"/>
+</wsdl:port>
+</wsdl:service>
+</wsdl:definitions>
diff --git a/tests/org.eclipse.wst.wsdl.validation.tests/testresources/samples/WSDL/NamespaceResolvesHTML/NamespaceResolvesHTML.wsdl b/tests/org.eclipse.wst.wsdl.validation.tests/testresources/samples/WSDL/NamespaceResolvesHTML/NamespaceResolvesHTML.wsdl
new file mode 100644
index 0000000..302f3a1
--- /dev/null
+++ b/tests/org.eclipse.wst.wsdl.validation.tests/testresources/samples/WSDL/NamespaceResolvesHTML/NamespaceResolvesHTML.wsdl
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://www.example.org/NamespaceResolvesHTML/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="NamespaceResolvesHTML" targetNamespace="http://www.example.org/NamespaceResolvesHTML/">
+<wsdl:documentation>
+	This WSDL tests that an extension element in a different namespace that
+	resolves to an HTML document (non-schema document) does not cause
+	validation errors.
+</wsdl:documentation>
+<wsdl:types>
+<xsd:schema targetNamespace="http://www.example.org/NamespaceResolvesHTML/">
+<xsd:element name="NewOperationResponse" type="xsd:string"/>
+<xsd:element name="NewOperationRequest" type="xsd:string"/>
+</xsd:schema>
+</wsdl:types>
+<wsdl:message name="NewOperationResponse">
+<wsdl:part element="tns:NewOperationResponse" name="NewOperationResponse"/>
+</wsdl:message>
+<wsdl:message name="NewOperationRequest">
+<wsdl:part element="tns:NewOperationRequest" name="NewOperationRequest"/>
+</wsdl:message>
+<wsdl:portType name="NamespaceResolvesHTML">
+<wsdl:operation name="NewOperation">
+<wsdl:input message="tns:NewOperationRequest"/>
+<wsdl:output message="tns:NewOperationResponse"/>
+</wsdl:operation>
+</wsdl:portType>
+<wsdl:binding name="NamespaceResolvesHTMLSOAP" type="tns:NamespaceResolvesHTML">
+<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+<ext:element xmlns:ext="http://www.eclipse.org/webtools"/>
+<wsdl:operation name="NewOperation">
+<soap:operation soapAction="http://www.example.org/NamespaceResolvesHTML/NewOperation"/>
+<wsdl:input>
+<soap:body parts=" NewOperationRequest" use="literal"/>
+</wsdl:input>
+<wsdl:output>
+<soap:body parts=" NewOperationResponse" use="literal"/>
+</wsdl:output>
+</wsdl:operation>
+</wsdl:binding>
+<wsdl:service name="NamespaceResolvesHTML">
+<wsdl:port binding="tns:NamespaceResolvesHTMLSOAP" name="NamespaceResolvesHTMLSOAP">
+<soap:address location="http://www.example.org/"/>
+</wsdl:port>
+</wsdl:service>
+</wsdl:definitions>