diff options
Diffstat (limited to 'id/server/doc/handbook/moduledevinfo')
-rw-r--r-- | id/server/doc/handbook/moduledevinfo/moduledevinfo.html | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/id/server/doc/handbook/moduledevinfo/moduledevinfo.html b/id/server/doc/handbook/moduledevinfo/moduledevinfo.html index c9cae99f3..949612509 100644 --- a/id/server/doc/handbook/moduledevinfo/moduledevinfo.html +++ b/id/server/doc/handbook/moduledevinfo/moduledevinfo.html @@ -97,6 +97,11 @@ </li> </ol> </li> + <li> + <p> + <a href="#hinweise">Hinweise</a> + </p> + </li> </ol> <hr /> @@ -194,12 +199,25 @@ <a name="tasks" id="tasks">2.1 Aufgaben (Tasks)</a> </h2> <p> - Aus technischer Sicht sind Aufgaben einfache Klassen, die die abstrakte Klasse <code>at.gv.egovernment.moa.id.process.springweb.MoaIdTask</code> (moa-id-lib-xy.jar) + Aus technischer Sicht sind Aufgaben einfache Klassen, die die abstrakte Klasse <code>at.gv.egovernment.moa.id.process.springweb.MoaIdTask</code> (<code>moa-id-lib-xy.jar</code>) implementieren. Diese definiert lediglich eine <code>execute</code>-Methode, die aufgerufen wird, sobald der Task von der ProcessEngine gestartet wird. �ber diese Methode erh�lt der Task Zugriff auf den ExecutionContext sowie auf HttpServletRequest und HttpServletResponse. Der HttpServletRequest und der ExecutionContext k�nnen nun ausgewertet, bzw. falls notwendig der ExecutionContext und die HttpServletResponse auch manipuliert werden. </p> <p> + Synchrone Tasks werden hintereinander ausgef�hrt. Trifft die Process Engine auf einen asynchronen Task wird dieser + nicht gleich ausgef�hrt, sondern der Prozess wird zun�chst angehalten. Bei asynchronen Tasks handelt es sich meist um Tasks, + die zuvor eine Benutzerinteraktion erfordern (z.B. Signatur mit B�rgerkartenumgebung).<br/> + Als Beispiel eines asynchronen Tasks w�re ein <code>VerifyIdentityLinkTask</code> zu nennen, der nach Eintreffen + der Antwort der B�rgerkartenumgebung auf der DataURL aufgeweckt wird, um eine <code>InfoBoxReadResponse</code> mit + der Personenbindung entgegen zu nehmen, diese zu parsen und zu validieren. + </p> + <p> + Die Aufgabe eines (DataURL-)Servlets, das den jeweiligen Prozess aufweckt, um die Ausf�hrung eines nachfolgenden asynchronen + Tasks zu bewirken, �bernimmt das interne Servlet <code>at.gv.egovernment.moa.id.auth.servlet.ProcessEngineSignalServlet</code>, + das auf die URL <code>/signalProcess</code> gemappt wurde. + </p> + <p> Als Beispiele typischer Tasks k�nnen die Klassen im package <code>at.gv.egovernment.moa.id.auth.modules.internal.tasks</code> herangezogen werden.<br/> </p> @@ -344,6 +362,17 @@ at.gv.egovernment.moa.id.auth.modules.mymodule.MyAuthModuleImpl</pre> </span></div> <p style="clear:left;"> </p> + <h1> + <a name="hinweise" id="hinweise">4 Hinweise</a> + </h1> + <p> + Um einzelne Funktionen als Plug-In umzusetzen, muss nicht unbedingt ein ganzer Prozess definiert werden. MOA-ID ab + Version 2.3 unterst�tzt die Servlet 3.0 API, was u.a. den Einsatz von <code>@WebServlet</code>-Annotations erm�glicht. + Damit entf�llt eine statische Registrierung von Servlets im <code>web.xml</code>. + </p> + <p>Am Beispiel des MonitoringServlets (<code>at.gv.egovernment.moa.id.auth.servlet.MonitoringServlet</code>), das als + separates JAR (<code>moa-id-module-monitoring-xy.jar</code>) ausgef�hrt wurde, kann dies anschaulich beobachtet werden. + <p> </p> <p> </p> </body> |