Bug 82326 [Dialogs] ClassCastException creating folder
Build: I20050104 1) Create a simple project called "a" 2) Create a simple file in the project called "b" 3) Open the "New Folder" wizard 4) For the parent name, enter "a/b" 5) For the folder name, enter "c" 6) Click finish. ClassCastException: java.lang.ClassCastException: org/eclipse/core/internal/resources/File incompatible with org/eclipse/core/resources/IContainer at org.eclipse.ui.dialogs.ContainerGenerator$1.run(ContainerGenerator.java:169) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1688) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1708) at org.eclipse.ui.dialogs.ContainerGenerator.generateContainer(ContainerGenerator.java:158) at org.eclipse.ui.dialogs.WizardNewFolderMainPage$3.execute(WizardNewFolderMainPage.java:292) at org.eclipse.ui.actions.WorkspaceModifyOperation$1.run(WorkspaceModifyOperation.java:98) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1688) at org.eclipse.ui.actions.WorkspaceModifyOperation.run(WorkspaceModifyOperation.java:110) at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:111)
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/misc/ResourceAndContainerGroup.java
problemMessage = "";
        if (!validateContainer() || !validateResourceName())
            return false;
        IPath path = containerGroup.getContainerFullPath().append(
                resourceNameField.getText());
        return validateFullResourcePath(path);
    }
    /**
     * Returns a <code>boolean</code> indicating whether the specified resource
     * path represents a valid new resource in the workbench.  An error message
     * is stored for future reference if the path  does not represent a valid
     * new resource path.
     *
     * @param resourcePath the path to validate
     * @return <code>boolean</code> indicating validity of the resource path
     */
    protected boolean validateFullResourcePath(IPath resourcePath) {
        IWorkspace workspace = ResourcesPlugin.getWorkspace();
        IStatus result = workspace.validatePath(resourcePath.toString(),
                IResource.FOLDER);
        if (!result.isOK()) {
            problemType = PROBLEM_PATH_INVALID;
            problemMessage = result.getMessage();
            return false;
        }
        if (!allowExistingResources
                && (workspace.getRoot().getFolder(resourcePath).exists() || workspace
                        .getRoot().getFile(resourcePath).exists())) {
            problemType = PROBLEM_RESOURCE_EXIST;
            problemMessage = IDEWorkbenchMessages