SWT kann drei Typen von Ausnahmebedingungen auslösen: IllegalArgumentException, SWTException und SWTError. Anwendungen sollten beim Aufrufen von SWT keine weiteren Ausnahmebedingungs- oder Fehlertypen erfassen müssen.
Hinweis: Wird von SWT eine andere als diese drei Ausnahmebedingungen ausgegeben, sollte dies als Programmfehler in der SWT-Implementierung betrachtet werden.
Wo dies möglich ist, werden Ausnahmebedingungen konsistent über Plattformen hinweg ausgelöst. Einige Fehler sind jedoch für eine SWT-Implementierung auf einer bestimmten Plattform spezifisch.
Die in den SWT-API-Methoden übergebenen Argumente werden auf einen entsprechenden Status und Bereich hin überprüft, bevor irgendeine andere Operation stattfindet. Wenn festgestellt wird, dass ein Argument ungültig ist, wird eine Ausnahmebedingung IllegalArgumentException ausgegeben.
Ein Code, der eine Ausnahmebedingung IllegalArgumentException auf einer Plattform verursacht, verursacht dieselbe Ausnahmebedingung auch auf einer anderen Plattform.
Die Ausnahmebedingung SWTException wird ausgegeben, wenn in SWT intern ein behebbarer Fehler auftritt. Fehlercode und Nachrichtentext liefern eine genauere Beschreibung des Problems.
SWT bleibt in einem bekanntermaßen stabilen Status, nachdem die Ausnahmebedingung ausgegeben wurde. Diese Ausnahmebedingung wird beispielsweise ausgegeben, wenn ein SWT-Aufruf über einen Thread erfolgt, der nicht zu einer Benutzerschnittstelle gehört.
Die Ausnahmebedingung SWTError wird aufgerufen, wenn in SWT ein nicht behebbarer Fehler auftritt.
SWT gibt diesen Fehler aus, wenn ein Aufruf der zu Grunde liegenden Plattform fehlschlägt, wobei SWT in einem unbekannten Status verbleibt, oder aber, wenn SWT einen nicht behebbaren Fehler (z. B. nicht genügend Ressourcen für die Plattformgrafik) enthält.
Nachdem ein SWT-Fehler aufgetreten ist, kann eine Anwendung erfahrungsgemäß wenig ausrichten, um den Fehler zu korrigieren. Solche Fehler sollten während des normalen Operationsablaufs in einer Anwendung nicht auftreten. Anwendungen mit einer hohen Zuverlässigkeit sollten die Fehler jedoch weiterhin erfassen und melden.