Bonjour,
Je développe une appli dans laquelle je souhaite restaurer l'état du workbench à l'ouverture. J'implémente donc la méthode:
Pour des raisons de robustesse, j'effectue quelques tests sur l'état que je restaure et aurait donc besoin d'afficher une fenetre d'erreur dans certains cas:
Code : Sélectionner tout - Visualiser dans une fenêtre à part public IStatus restoreState(IMemento memento)
Lorsque je rentre dans un tel cas, j'ai une exception (voir en bas du post).
Code : Sélectionner tout - Visualiser dans une fenêtre à part MessageDialog.openError(null, "Open Error", "The project [...]");
J'ai voulu essayer en mettant autre chose que null mais impossible de récupérer un shell (soit je tombe sur un null, soit j'ai une exception Invalid Thread).
Quelqu'un a-t-il déjà eu ce problème ou une idée pour me sortir de la?
D'avance merci
L'exception générée:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 !ENTRY org.eclipse.ui.workbench 4 2 2008-06-17 09:41:30.843 !MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.ui.workbench". !STACK 0 java.lang.NullPointerException at org.eclipse.jface.dialogs.IconAndMessageDialog.getSWTImage(IconAndMessageDialog.java:275) at org.eclipse.jface.dialogs.IconAndMessageDialog.getErrorImage(IconAndMessageDialog.java:225) at org.eclipse.jface.dialogs.MessageDialog.<init>(MessageDialog.java:141) at org.eclipse.jface.dialogs.MessageDialog.openError(MessageDialog.java:313) at org.myproject.app.ApplicationWorkbenchAdvisor.restoreState(ApplicationWorkbenchAdvisor.java:54) at org.eclipse.ui.internal.Workbench.doRestoreState(Workbench.java:3311) at org.eclipse.ui.internal.Workbench.access$32(Workbench.java:3294) at org.eclipse.ui.internal.Workbench$53.run(Workbench.java:2112) at org.eclipse.ui.internal.Workbench.runStartupWithProgress(Workbench.java:1820) at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:2110) at org.eclipse.ui.internal.Workbench.access$30(Workbench.java:2081) at org.eclipse.ui.internal.Workbench$48.run(Workbench.java:1939) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:1883) at org.eclipse.ui.internal.WorkbenchConfigurer.restoreState(WorkbenchConfigurer.java:183) at org.eclipse.ui.application.WorkbenchAdvisor$1.run(WorkbenchAdvisor.java:779)
Partager