[
https://issues.apache.org/jira/browse/DIRSTUDIO-1046?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14550138#comment-14550138
]
Emmanuel Lecharny commented on DIRSTUDIO-1046:
----------------------------------------------
Something like that ?
{code}
/**
* Creates a new instance of EntryEditorManager.
*/
public EntryEditorManager()
{
if ( PlatformUI.getWorkbench().getActiveWorkbenchWindow() != null )
{
getEditorManager();
}
}
/**
* Get the EditorManager instance
*/
public void getEditorManager()
{
initEntryEditorExtensions();
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getPartService().addPartListener(
partListener );
EventRegistry
.addEntryUpdateListener( entryUpdateListener,
BrowserCommonActivator.getDefault().getEventRunner() );
ConnectionEventRegistry.addConnectionUpdateListener(
connectionUpdateListener, ConnectionUIPlugin.getDefault()
.getEventRunner() );
}
{code}
> EntryEditorManager constructor can throw NPE
> --------------------------------------------
>
> Key: DIRSTUDIO-1046
> URL: https://issues.apache.org/jira/browse/DIRSTUDIO-1046
> Project: Directory Studio
> Issue Type: Bug
> Components: studio-ldapbrowser
> Affects Versions: 2.0.0-M8 (2.0.0.v20130628)
> Reporter: Paul Richardson
>
> Using the BrowserWidget in a wizard rather than the BrowserView can result in
> a NullPointerException being thrown.
> The BrowseWidget is embedded in a WizardPage so the
> org.apache.directory.ldapbrowser.ui plugin has not necessarily been
> activated. However, during a refresh of the BrowserWidget's tree view, a
> worker-runnable calls on resources of the ldapbrowser.ui plugin and it is
> activated.
> The activation of the ldapbrowser.ui plugin calls
> {code}
> entryEditorManager = new EntryEditorManager();
> {code}
> The constructor of the EntryEditorManager contains
> {code}
> PlatformUI.getWorkbench().getActiveWorkbenchWindow().getPartService().addPartListener(
> partListener );
> {code}
> This code only works if called from the UI thread. Otherwise,
> getActiveWorkbenchWindow() returns null hence the NPE.
> Since a runnable is responsible for the plugin activation in this use-case
> then this behaviour occurs.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)