Bonjour,
voilà j'aimerais pouvoir catcher les exceptions qui seraient levées dans l'Event Dispatch Thread (aka. l'EDT de Swing) sans avoir à entourer systématiquement tout les code que je lui fais exécuter par un try / catch.
Exemple pour comprendre (mon problème réel est plus complexe) :
Bien sûr, si j'entoure mon appel à invokeLater avec un try ... catch, il ne servira à rien puisque c'est pas l'invokeLater executé dans le thread principal qui va générer l'exception, mais l'exécution du Runnable dans l'EDT.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 // ma fonction dans mon thread principal. // bla bla bla EventQueue.invokeLater(new Runnable(){ public void run() { Object nullObject = null; System.out.println("Je lève une exception..."+nullObject.toString()); } });
La solution évidente serait de catcher mon exception directement dans run() en entourant mon bloc "Object nullObjet [...] System.out.println " par un try ... catch.
Malheureusement dans mon cas, je ne peux pas vraiment me le permettre. Y aurait-il un moyen de récuperer dans mon thread principal une exception levée par l'EDT ?
Merci d'avance![]()
Partager