Bug 155873 [PropertiesView] PropertySheetPage Help Integration Does Not Work In a Wizard
I've created a wizard page that uses a PropertySheetPage. If the PSP has focus and I press F1 to open help, a NPE occurs. The NPE occurs in the PropertySheetPage class on line 233 which is this: getSite().getWorkbenchWindow().getWorkbench().getHelpSystem().displayHelp(HELP_CONTEXT_PROPERTY_SHEET_PAGE); getSite() returns null because the PSP is not in a view. From what I can tell, getSite() is only being called to get the help system, which can be done in another way. If the help system was acquired in a different way that didn't involve getting the site I think this would work. Here's an example I tried which works: PlatformUI.getWorkbench().getHelpSystem().displayHelp(HELP_CONTEXT_PROPERTY_SHEET_PAGE); So, I think only a minor change in the eclipse UI is required to resolve the issue I have. I will attach a patch that contains this fix.
bundles/org.eclipse.ui.views/src/org/eclipse/ui/views/properties/PropertySheetPage.java
/**
     * Help context id 
     * (value <code>"org.eclipse.ui.property_sheet_page_help_context"</code>).
     */
    public static final String HELP_CONTEXT_PROPERTY_SHEET_PAGE = "org.eclipse.ui.property_sheet_page_help_context"; 
    private PropertySheetViewer viewer;
    
    private PropertySheetSorter sorter;
    private IPropertySheetEntry rootEntry;
    private IPropertySourceProvider provider;
    private DefaultsAction defaultsAction;
    private FilterAction filterAction;
    private CategoriesAction categoriesAction;
    private CopyPropertyAction copyAction;
    private ICellEditorActivationListener cellEditorActivationListener;
    private CellEditorActionHandler cellEditorActionHandler;
    private Clipboard clipboard;
	private IWorkbenchPart sourcePart;
	/**
	 * Part listener which cleans up this page when the source part is closed.
	 * This is hooked only when there is a source part.
	 *  
	 * @since 3.2
	 */
	private class PartListener implements IPartListener {