Project: Eclipse_Platform_UI
Bug 318353 [Compatibility] IWorkbenchPage's getViewStack(IViewPart) assumes everything in an MPartStack is an MPart
Reported: 2010-06-29 12:40:23 | Status: resolved fixed

A CCE may be thrown if you try to show all the views in the show view dialog. java.lang.ClassCastException: org.eclipse.e4.ui.model.application.ui.advanced.impl.PlaceholderImpl incompatible with org.eclipse.e4.ui.model.application.ui.basic.MPart at org.eclipse.ui.internal.WorkbenchPage.getViewStack(WorkbenchPage.java:2472) at org.eclipse.ui.part.PageBookView.partHidden(PageBookView.java:1064) at org.eclipse.ui.views.properties.PropertySheet.partHidden(PropertySheet.java:304) at org.eclipse.ui.part.PageBookView$4.partHidden(PageBookView.java:1030) at org.eclipse.ui.internal.WorkbenchPage.firePartHidden(WorkbenchPage.java:2813) at org.eclipse.ui.internal.WorkbenchPage.access$9(WorkbenchPage.java:2806) at org.eclipse.ui.internal.WorkbenchPage$E4PartListener.partHidden(WorkbenchPage.java:143) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.firePartHidden(PartServiceImpl.java:195) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.access$1(PartServiceImpl.java:193) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl$1.handleEvent(PartServiceImpl.java:77) at org.eclipse.e4.ui.services.internal.events.UIEventHandler.handleEvent(UIEventHandler.java:41) at org.eclipse.equinox.internal.event.EventHandlerWrapper.handleEvent(EventHandlerWrapper.java:188) at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:198) at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:227) at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:149) at org.eclipse.equinox.internal.event.EventAdminImpl.dispatchEvent(EventAdminImpl.java:139) at org.eclipse.equinox.internal.event.EventAdminImpl.sendEvent(EventAdminImpl.java:78) at org.eclipse.equinox.internal.event.EventComponent.sendEvent(EventComponent.java:39) at org.eclipse.e4.ui.services.internal.events.EventBroker.send(EventBroker.java:73) at org.eclipse.e4.ui.internal.workbench.UIEventPublisher.notifyChanged(UIEventPublisher.java:58) at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:380) at org.eclipse.e4.ui.model.application.ui.impl.ElementContainerImpl.setSelectedElement(ElementContainerImpl.java:159) at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.bringToTop(ModelServiceImpl.java:224) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.activate(PartServiceImpl.java:359) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.showPart(PartServiceImpl.java:565) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.showPart(PartServiceImpl.java:612) at org.eclipse.e4.ui.internal.workbench.swt.handlers.ShowViewHandler.execute(ShowViewHandler.java:47)

Files changed in fix:
bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchPage.java