<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE document PUBLIC "-//MAKUMBA//DTD Documentation V2.0//EN" "document-v20-mak.dtd">
<document>
    <header>
        <title>Makumba Controller</title>
    </header>
    <body>

<section>
    <title>The makumba controller</title>
        
<p>The makumba controller is a component running in the 'servlet container'. When a request for a makumba page
    enters the servlet container, the controller will intercept the request, and perform its "controller" activities
    (cfr. the model-view-controller pattern) :</p>
<ul>
    <li><a href="authentication.html">authentication</a>: check if a user is allowed to access the web-application as a whole</li>
    <li><a href="authorization.html">authorization</a>: check if the user is authorized to execute the specific page</li>
    <li><a href="forms.html">form submission handling</a>: in case of a form submission, perform validation (implicit and explicit), execute form-specific business logic and handle form response</li>
    <li><a href="error.html">error handling</a>: if an error occurs (be it a programmer error or an internal error), handle the error by e.g. displaying the appropriate page</li>
</ul>

</section>
        
    </body>
</document>

