You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by "Nicolas Lalevée (JIRA)" <ji...@apache.org> on 2008/11/12 19:23:44 UTC

[jira] Resolved: (IVYDE-132) NPE in org.apache.ivyde.eclipse.IvyPlugin.getIvy

     [ https://issues.apache.org/jira/browse/IVYDE-132?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Nicolas Lalevée resolved IVYDE-132.
-----------------------------------

    Resolution: Duplicate

> NPE in org.apache.ivyde.eclipse.IvyPlugin.getIvy
> ------------------------------------------------
>
>                 Key: IVYDE-132
>                 URL: https://issues.apache.org/jira/browse/IVYDE-132
>             Project: IvyDE
>          Issue Type: Bug
>          Components: classpath container
>    Affects Versions: 2.0.0.alpha1
>         Environment: Eclipse 3.2.2 / Rational v7.0 (pre 7.5)
>            Reporter: Mladen Maravic
>            Priority: Minor
>
> Sometimes, IvyDE would cause the following errors to be logged into the Eclipse error log:
> java.lang.NullPointerException
> 	at org.eclipse.jface.dialogs.IconAndMessageDialog.getSWTImage(Unknown Source)
> 	at org.eclipse.jface.dialogs.IconAndMessageDialog.getWarningImage(Unknown Source)
> 	at org.eclipse.jface.dialogs.MessageDialog.<init>(Unknown Source)
> 	at org.eclipse.jface.dialogs.MessageDialog.openWarning(Unknown Source)
> 	at org.apache.ivyde.eclipse.IvyPlugin.getIvy(Unknown Source)
> 	at org.apache.ivyde.eclipse.cpcontainer.IvyClasspathContainer.computeClasspathEntries(Unknown Source)
> 	at org.apache.ivyde.eclipse.cpcontainer.IvyClasspathContainer.scheduleRefresh(Unknown Source)
> 	at org.apache.ivyde.eclipse.cpcontainer.IvyClasspathInitializer.initialize(Unknown Source)
> 	at org.eclipse.jdt.internal.core.JavaModelManager.initializeContainer(Unknown Source)
> 	at org.eclipse.jdt.internal.core.JavaModelManager$8.run(Unknown Source)
> 	at org.eclipse.core.internal.resources.Workspace.run(Unknown Source)
> 	at org.eclipse.jdt.internal.core.JavaModelManager.initializeAllContainers(Unknown Source)
> 	at org.eclipse.jdt.internal.core.JavaModelManager.getClasspathContainer(Unknown Source)
> 	at org.eclipse.jdt.core.JavaCore.getClasspathContainer(Unknown Source)
> 	at org.eclipse.jdt.internal.core.JavaProject.getResolvedClasspath(Unknown Source)
> 	at org.eclipse.jdt.internal.core.JavaProject.getResolvedClasspath(Unknown Source)
> 	at org.eclipse.jdt.internal.core.DeltaProcessingState.initializeRoots(Unknown Source)
> 	at org.eclipse.jdt.core.JavaCore.initializeAfterLoad(Unknown Source)
> 	at org.eclipse.jdt.internal.ui.InitializeAfterLoadJob$RealJob.run(Unknown Source)
> 	at org.eclipse.core.internal.jobs.Worker.run(Unknown Source)
> (I've seen instances where line number are present!).
> This is due to the fact that the org.apache.ivyde.eclipse.IvyPlugin.getIvy() method uses MessageDialog.openWarning method. MessageDialog uses Display.getCurrent() internally. This results in errors if MessageDialog.openXXXX is used outside of the UI thread. 
> To correct this, every MessageDialog.openXYZ in getIvy method should be surrounded by this code:
> Display.getDefault().asyncExec(new Runnable() {
>       public void run() {
>             MessageDialog.openXYZ(.......);
>        }
> });

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.