| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| helpQLODhelp Registriert seit: Feb 2002 Ort: Köln
Beiträge: 8.505
| Beispiel: Exceptionhandling in ActionScript
Mancher osflasher kennt das vielleicht schon, aber damit die anderen nicht dumm sterben, verlinke ich das hier auch mal. In meinem Beispiel geht es darum, wie man in AS2 mit Exceptions umgeht. Es wird eine XML Datei geladen, die Fehler enthält. In der Fehlerbehandlung wird dann eine andere XML Datei geladen, die (hoffentlich) keine Fehler enthält. Ok, das Beispiel ist vielleicht etwas weit hergeholt, weil man normalerweise kaum eine zweite XML-Datei zur Verfügung hat. Es ging mir aber darum, zu zeigen, dass man mit Exceptions schnell die Kontrolle an den Aufrufer zurückgeben kann, und der dann entscheiden kann, wie der Fehler behandelt werden soll. Kommentare sind wie immer willkommen, mfg. r
__________________ Ralf Bokelberg™ - Flex & Flash Consulting |
| | |
| | #2 (permalink) |
| Flashinspector Registriert seit: Jul 2003
Beiträge: 208
|
Moin Bokel, ich selber bin ein großer Freund von Exceptions. Was ich mich Frage, warum leitest Du deine Exception nicht vom "Error-Objekt" ab? Macht das nicht mehr sinn? Dann könnte man auch mit catch,try und finally arbeiten. Bei meinem "Exception-Framework", werden alle "geworfenen" Exception bei einem "Controller" in den Stack gepackt. So kann ich einen Fehler genau reproduzieren, bzw. Ich kann genau herausfinden, wann und wo ein Fehler passiert ist. Ich fand diese Arbeitesweise ganz "sexy", da ich micht jetzt nicht um jede Exception einzeln kümmern muss, sondern alles über einen "Controller" erledigen kann. Grüsschen Markus |
| | |
| | #3 (permalink) |
| helpQLODhelp Registriert seit: Feb 2002 Ort: Köln
Beiträge: 8.505
|
Ja klar, ich könnte Error noch als Basisklasse von RuntimeException benutzen. Für try catch finally ist das aber nicht nötig. Wichtig ist aber auf jeden Fall, dass man eine Basisklasse hat, mit der man "alle" Exceptions catchen kann. Ich benutze dafür halt die RuntimeException. Das catch-all braucht man unbedingt um in asynchronen Eventhandlern Exceptions catchen und in ein Event verpacken zu können. Wenn man das nicht macht, stirbt die Anwendung einfach an der Stelle, weil man ja kein try catch um einen Eventhandler herum bauen kann. So einen Fehler zu finden ist sehr schwierig. Deshalb trace ich die Exception immer sofort bei der Erzeugung in der Basisklasse. Das ist wahrscheinlich die Stelle, an der du dann die Exception an deinen Controller weiterreichst, oder? (im Konstruktor von RuntimeException) mfg. r
__________________ Ralf Bokelberg™ - Flex & Flash Consulting |
| | |
| | #4 (permalink) | |
| Flashinspector Registriert seit: Jul 2003
Beiträge: 208
| Zitat:
Hier mal ein Beispiel, wie mein Aufruf einer Exception aussieht. PHP-Code: PHP-Code: PHP-Code: Gruß Markus | |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |