9
votes

NullPointerException dans plateformeUI.Guturewworkbench (). Getactiveworkbenchwindow (). Getactivepage ()

 //obtain the active page
 IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
returns Exception in thread "Thread-3" java.lang.NullPointerExceptionµ.
What shall i do?

0 commentaires

3 Réponses :


2
votes

Ajoutez des chèques nuls, il est possible que le Workbench ne possède pas de fenêtre active, ce n'est pas aussi possible pour plateformeUI.Gutawworkbench de jeter une exception illegalStaTeException si le workbench n'est pas encore démarré (par exemple, CreateantAndrunworkbench () n'a pas encore été appelé).

IWorkbenchWindow window = PlatformUI.getWorkbench().getInstance()
    .getActiveWorkbenchWindow();

if(workbenchWindow != null) {
     IWorkbenchPage page = window .getActivePage();
}


0 commentaires

38
votes

Si le fil ne fonctionne pas dans la fenêtre active, plateformeUI.Getworkbench (). Getactiveworkbenchwindow () retournera "null". Vous devez envelopper votre code dans un affichage, par exemple: xxx


1 commentaires

Merci beaucoup. Cela m'aide vraiment. Parfaitement en cours d'exécution.



0
votes

J'ai un travail autour pour cela. Même si c'est un ancien post.

    IWorkbench wb = PlatformUI.getWorkbench();
    if (wb.getWorkbenchWindowCount() == 1) {
      try{
      wb.getWorkbenchWindows()[0].getActivePage().getPerspective();
      }
      catch(NullPointerException e)
      {
        Logger.log(e);
      }
    }


1 commentaires

Merci cela m'a aidé.