aboutsummaryrefslogtreecommitdiff
path: root/id/server/doc/handbook/moduledevinfo
diff options
context:
space:
mode:
Diffstat (limited to 'id/server/doc/handbook/moduledevinfo')
-rw-r--r--id/server/doc/handbook/moduledevinfo/moduledevinfo.html31
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;">&nbsp;</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>&nbsp;</p>
<p>&nbsp;</p>
</body>