[272580] EJBClientJARRemovalOperation.deleteClientProject() needs to react to the case where the client project is not deletable
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/ejbarchive/org/eclipse/jst/j2ee/internal/ejb/archiveoperations/EJBClientJARRemovalOperation.java b/plugins/org.eclipse.jst.j2ee.ejb/ejbarchive/org/eclipse/jst/j2ee/internal/ejb/archiveoperations/EJBClientJARRemovalOperation.java
index 66ea221..0514b2d 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/ejbarchive/org/eclipse/jst/j2ee/internal/ejb/archiveoperations/EJBClientJARRemovalOperation.java
+++ b/plugins/org.eclipse.jst.j2ee.ejb/ejbarchive/org/eclipse/jst/j2ee/internal/ejb/archiveoperations/EJBClientJARRemovalOperation.java
@@ -17,6 +17,7 @@
import java.util.List;
import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.internal.resources.ResourceException;
import org.eclipse.core.resources.IContainer;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IFolder;
@@ -547,7 +548,11 @@
*/
private void deleteClientProject() throws CoreException {
if (shouldDelete)
- clientProject.delete(true, true, createSubProgressMonitor(1));
+ try{
+ clientProject.delete(true, true, createSubProgressMonitor(1));
+ }catch(ResourceException e){
+ clientProject.delete(false, true, createSubProgressMonitor(1));
+ }
}
protected IProgressMonitor createSubProgressMonitor(int ticks) {