Merge "[501140] Create a new list to iterate over it to avoid concurrency issue"
diff --git a/plugins/org.eclipse.jst.j2ee/refactor/org/eclipse/jst/j2ee/refactor/listeners/J2EEElementChangedListener.java b/plugins/org.eclipse.jst.j2ee/refactor/org/eclipse/jst/j2ee/refactor/listeners/J2EEElementChangedListener.java
index d650697..ab4c111 100644
--- a/plugins/org.eclipse.jst.j2ee/refactor/org/eclipse/jst/j2ee/refactor/listeners/J2EEElementChangedListener.java
+++ b/plugins/org.eclipse.jst.j2ee/refactor/org/eclipse/jst/j2ee/refactor/listeners/J2EEElementChangedListener.java
@@ -310,7 +310,7 @@
 			core = StructureEdit.getStructureEditForRead(project);
 			final WorkbenchComponent component = core.getComponent();
 			if (null != component) {
-				final List currentResources = component.getResources();
+				final List currentResources = new ArrayList(component.getResources());
 				for (Iterator iter = currentResources.iterator(); iter.hasNext();) {
 					final ComponentResource resource = (ComponentResource) iter.next();
 					sourceToRuntime.put(resource.getSourcePath().makeRelative(), resource.getRuntimePath());