reverting fix that was mistakenly released to 1_5_maintenance branch, that was intended (only) for 1_5_5_patches branch.
diff --git a/plugins/org.eclipse.jst.j2ee.webservice/webservice/org/eclipse/jst/j2ee/internal/webservice/helper/WebServicesManager.java b/plugins/org.eclipse.jst.j2ee.webservice/webservice/org/eclipse/jst/j2ee/internal/webservice/helper/WebServicesManager.java
index 9f60089..0f0bc5d 100644
--- a/plugins/org.eclipse.jst.j2ee.webservice/webservice/org/eclipse/jst/j2ee/internal/webservice/helper/WebServicesManager.java
+++ b/plugins/org.eclipse.jst.j2ee.webservice/webservice/org/eclipse/jst/j2ee/internal/webservice/helper/WebServicesManager.java
@@ -23,11 +23,9 @@
 import java.util.Collection;
 import java.util.Collections;
 import java.util.HashMap;
-import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
-import java.util.Set;
 
 import org.eclipse.core.resources.IFile;
 import org.eclipse.core.resources.IProject;
@@ -102,7 +100,6 @@
 	private boolean isNotifying = false;
 	private boolean wsClientElementsChanged = true;
 	private boolean wsElementsChanged = true;
-	private ProcessProjectsWithWSDL processNewProjects;
 
 	public static final String WSDL_EXT = "wsdl"; //$NON-NLS-1$
 	public static final String WSIL_EXT = "wsil"; //$NON-NLS-1$
@@ -873,12 +870,9 @@
 			if ((delta.getKind()==IResourceDelta.ADDED || (((delta.getFlags() & IResourceDelta.OPEN) != 0) && p.isAccessible()))) {
 				IVirtualComponent component = ComponentCore.createComponent(p);
 				if (component!=null && !J2EEProjectUtilities.isEARProject(p) && !J2EEProjectUtilities.isStaticWebProject(p)) {
-					if (processNewProjects != null && (processNewProjects.getState() == Job.WAITING))
-						processNewProjects.addProject(p);
-					else {
-						processNewProjects = createProjectsJob(p);					
-						processNewProjects.schedule();
-					}
+					Job job = new ProcessProjectsWithWSDL(p, EditModelEvent.ADDED_RESOURCE);
+					job.setRule(p);
+					job.schedule();
 					return false;
 				}
 			}
@@ -899,12 +893,9 @@
 				    addedWsil((IFile)resource);
 				else if (resource.getName().equals(J2EEConstants.WEB_SERVICES_CLIENT_SHORTNAME) ||
 						resource.getName().equals(J2EEConstants.WEB_SERVICES_DD_URI)) {
-					if (processNewProjects != null && (processNewProjects.getState() == Job.WAITING))
-						processNewProjects.addProject(resource.getProject());
-					else {
-						processNewProjects = createProjectsJob(resource.getProject());					
-						processNewProjects.schedule();
-					}
+					Job job = new ProcessProjectsWithWSDL(resource.getProject(), EditModelEvent.LOADED_RESOURCE);
+					job.setRule(resource.getProject());
+					job.schedule();
 				}	
 			} 
 			// Handle WSIL or WSDL file removals
@@ -917,40 +908,21 @@
 		return true;
 	}
 
-	private ProcessProjectsWithWSDL createProjectsJob(IProject p) {
-		Set newSet = new HashSet();
-		newSet.add(p);
-		ProcessProjectsWithWSDL job = new ProcessProjectsWithWSDL(newSet, EditModelEvent.ADDED_RESOURCE);
-		job.setRule(p.getWorkspace().getRoot());
-		return job;
-	}
-
 	private class ProcessProjectsWithWSDL extends Job
 	{
-		private Set currentProjects;
+		private IProject currentProject;
 		private int eventType;
 		
-		public ProcessProjectsWithWSDL(Set p, int newEventType)
+		public ProcessProjectsWithWSDL(IProject p, int newEventType)
 		{
 			super("Loading artifact edit for project");
-			currentProjects = p;
+			currentProject = p;
 			eventType = newEventType;
 		}
 		
-		public void addProject(IProject p) {
-			synchronized(currentProjects) {
-				currentProjects.add(p);
-			}
-		}
-
 		protected IStatus run(IProgressMonitor monitor) {
-			for (Iterator iterator = currentProjects.iterator(); iterator.hasNext();) {
-				IProject currentProject = (IProject) iterator.next();
-				addArtifactEdit(currentProject);
-			}
+			addArtifactEdit(currentProject);
 			notifyListeners(eventType);
-			// Null out job for processing new projects
-			processNewProjects = null;
 			return Status.OK_STATUS;
 		}
 	}