
Neben den Anwendungsmethoden gibt es zu jedem lokalen Controller-Interface eine feste Anzahl von Methoden, die ausschließlich von der Laufzeit gerufen werden können. Als Anwendungsentwickler haben Sie keinen Einfluss darauf, wann diese Methoden gerufen werden, Sie können jedoch in die Implementierung eingreifen. Die Aufrufzeitpunkte dieser Methoden sind genau festgelegt und im Phasenmodell von Web Dynpro beschrieben
WDDOINIT und WDDOEXIT
Die beiden einfachsten Beispiele sind die Methoden WDDOINIT und WDDOEXIT.
WDDOINIT wird immer dann automatisch aufgerufen, wenn ein Controller erstmals initialisiert wird. Für jeden neu angelegten Controller ist diese Methode leer, kann jedoch mit geeignetem Coding versehen werden. In dieser Methoden können unter anderem folgende Schritte untergebracht werden:
Instanzen von Hilfsklassen erzeugen
Controller-Attribute initialisieren
Wenn Sie für Ihre Programmierung weitere Attribute benötigen und diese wiederum Referenzvariablen sind, können diese hier initialisiert werden.
Autorisierungs-Checks antriggern (sollte in Hilfsklasse gemacht werden)
Initialwerte des Controller-Contexts setzen
Instanziierung von verwendeten Components
Beispiel für die Initialisierung eines Controller-Contexts:
method WDDOINIT .
data: NODE type ref to IF_WD_CONTEXT_NODE,
FLIGHTS type SPFLI_TAB.
* get node from context
NODE = WD_CONTEXT->GET_CHILD_NODE( 'CARRIER_NODE' ).
* get connections from helper class
FLIGHTS = CL_WD_GET_SPFLI=>GET_FLIGHTS( ).
NODE->BIND_ELEMENTS( FLIGHTS ).
endmethod.
WDDOEXIT wird von der Laufzeit beim Verlassen des Controllers aufgerufen und dient beispielsweise zur Freigabe von Sperren.
Je nach Ausprägung des Controllers verfügt das lokale Controller-Interface außerdem über weitere Hook-Methoden:
|
Component-Controller |
View-Controller |
Window-Controller |
|
WDDOINIT/ WDDOEXIT |
WDDOINIT/ WDDOEXIT |
WDDOINIT/ WDDOEXIT |