[ 
https://issues.apache.org/jira/browse/DIRSTUDIO-1046?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14549959#comment-14549959
 ] 

Emmanuel Lecharny commented on DIRSTUDIO-1046:
----------------------------------------------

I suspect that the editor is called from a shell that is not a window. In this 
case, {{getActiveWorkbenchWindow()}} will return null. The pb is how to get the 
window when we don't know in which context we are called ?

> 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)

Reply via email to