[305327] Regression in ordering due to Set
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerUtil.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerUtil.java
index a320428..51b30c8 100644
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerUtil.java
+++ b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerUtil.java
@@ -88,7 +88,7 @@
 			throw new IllegalArgumentException();
 		
 		// use a set for better contains() performance
-		Set<IModule> set = new HashSet<IModule>();
+		List<IModule> list = new ArrayList<IModule>();
 		
 		ModuleFactory[] factories = ServerPlugin.getModuleFactories();
 		if (factories != null) {
@@ -96,15 +96,13 @@
 				IModule[] modules = factory.getModules(project, null);
 				if (modules != null) {
 					for (IModule module : modules) {
-						if (!set.contains(module))
-							set.add(module);
+						if (!list.contains(module))
+							list.add(module);
 					}
 				}
 			}
 		}
-		IModule[] modules = new IModule[set.size()];
-		set.toArray(modules);
-		return modules;
+		return list.toArray(new IModule[list.size()]);
 	}
 
 	/**