Bug 33628 [Preferences] provide API for showing a specified preference page
There is no way for a plugin to open the (workbench) preference dialog with a certain peference page selected. Enabling this would allow plugins to refer the user to a certain preference page, for example when a misconfiguration is detected during execution of an action. Also this enables developers to write a new search panel to find a text in the preference pages and get the user right there. A method select(IPreferencePage page), select(IPreferenceNode node) or select(String path) in org.eclipse.jface.preference.PreferenceDialog would help.
bundles/org.eclipse.jface/src/org/eclipse/jface/preference/PreferenceDialog.java
/**
	 * Selects the saved item in the tree of preference pages. If it cannot do
	 * this it saves the first one.
	 */
	protected void selectSavedItem() {
		IPreferenceNode node = findNodeMatching(getSelectedNodePreference());
		if (node == null) {
			IPreferenceNode[] nodes = preferenceManager.getRoot().getSubNodes();
			if (nodes.length > 0)
				node = nodes[0];
		}
		if (node != null) {
			getTreeViewer().setSelection(new StructuredSelection(node), true);
			
			getTreeViewer().getControl().setFocus();
		}
	}
	/**
	 * Display the given error message. The currently displayed message is saved
	 * and will be redisplayed when the error message is set to
	 * <code>null</code>.
	 * 
	 * @param newErrorMessage
	 *            the errorMessage to display or <code>null</code>
	 */
	public void setErrorMessage(String newErrorMessage) {
		if (newErrorMessage == null)
			messageArea.clearErrorMessage();
		else
			messageArea.updateText(newErrorMessage, IMessageProvider.ERROR);