Bug 265381 [CommonNavigator] Could not acquire INavigatorContentService from part ("Welcome").
I20090217-2200 This error message has been seen in several Eclipse based products but the problem has nothing to do with Welcome and everything to do with the extension point org.eclipse.ui.views.properties.tabbed. To reproduce 1. Import the attached plugin into your workspace 2. Check out org.eclipse.sdk and modify plugin_customization.ini to change the default perspective using the following lines to replace the existing default perspective setting: # Property "org.eclipse.ui/defaultPerspectiveId" controls the # perspective that the workbench opens initially org.eclipse.ui/defaultPerspectiveId=org.eclipse.bugzilla.propertyperspective.perspective 3. Start a new run time workbench. Be sure to check the setting to clear theworkspace before launching. The welcome page will show. Close the welcome page by clicking on the go to workbench button. Note that there is an error message Could not acquire INavigatorContentService from part ("Welcome") in the log. The reason for this error message is that the properties view has a listener for when a part is created and if that view extends the properties view it goes through more processing which ends up in the constructor for TabbedPropertySheetTitleProvider where it calls PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActivePart(); In this case this returns a different part to the view which was opened and an error is generated. I'm marking this as major because it has been reported several times in products which have default perspectives which contain both the properties view and project explorer.
bundles/org.eclipse.ui.navigator.resources/src/org/eclipse/ui/internal/navigator/resources/workbench/TabbedPropertySheetTitleProvider.java
super();
		IWorkbenchPart part = PlatformUI.getWorkbench()
				.getActiveWorkbenchWindow().getActivePage().getActivePart();
		INavigatorContentService contentService = (INavigatorContentService) part
				.getAdapter(INavigatorContentService.class);
		if (contentService != null) {
			labelProvider = contentService.createCommonLabelProvider();
			descriptionProvider = contentService
					.createCommonDescriptionProvider();
		} else {
			WorkbenchNavigatorPlugin.log(
					"Could not acquire INavigatorContentService from part (\"" 
							+ part.getTitle() + "\").", null); 
		}
	}
	/**
	 * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
	 */
	public Image getImage(Object object) {
		return labelProvider != null ? labelProvider.getImage(object) : null;
	}
	/**
	 * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
	 */
	public String getText(Object object) {
		return descriptionProvider != null ? descriptionProvider
				.getDescription(object) : null;
	}
}