Bug 315332 [Viewers] [Provider] ClassCastException happened at jface when selecting tree with using picture-capture software.
Build Identifier: M20090917-0800 We are manipulating two software - one is our developing software and the other is picture-capture software. When we select tree at our developing software, then ClassCastException happend. This is the stack trace(scroll below) java.lang.ClassCastException: org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider cannot be cast to org.eclipse.jface.viewers.ColumnLabelProvider at org.eclipse.jface.viewers.SWTFocusCellManager$4.getName(SWTFocusCellManager.java:190) at org.eclipse.swt.accessibility.Accessible.get_accName(Accessible.java:932) at org.eclipse.swt.accessibility.Accessible$1.method10(Accessible.java:87) at org.eclipse.swt.internal.ole.win32.COMObject.callback10(COMObject.java:155) at org.eclipse.swt.internal.win32.OS.CallNextHookEx(Native Method) at org.eclipse.swt.ole.win32.OleFrame.getMsgProc(OleFrame.java:307) at org.eclipse.swt.internal.win32.OS.PeekMessageW(Native Method) at org.eclipse.swt.internal.win32.OS.PeekMessage(OS.java:2975) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3468) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) Reproducible: Always
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/SWTFocusCellManager.java
new AccessibleAdapter() {
					public void getName(AccessibleEvent event) {
						ViewerCell cell = getFocusCell();
						if (cell == null)
							return;
						
						ViewerRow row = cell.getViewerRow();
						if (row == null)
							return;
						
						Object element = row.getItem().getData();
						ViewerColumn viewPart = viewer.getViewerColumn(cell
								.getColumnIndex());
						
						if (viewPart == null)
							return;
						
						ColumnLabelProvider labelProvider = (ColumnLabelProvider) viewPart
								.getLabelProvider();
						
						if (labelProvider == null)
							return;
						
						event.result = labelProvider.getText(element);
					}
				});
	}
	/**
	 * @return the cell with the focus
	 *