src/ministruts/RequestProcessor.php
protected function processMapping(Request $request, Response $response) {
        // Pfad fuer die Mappingauswahl ermitteln ...
        $requestPath = '/'.trim(preg_replace('|/{2,}|', '/', $request->getPath()), '/').'/';   // normalize request path
        if ($requestPath=='//') $requestPath = '/';
        // /
        // /controller/action/
        // /module/
        // /module/controller/action/

        $moduleUri = $request->getApplicationBaseUri().$this->module->getPrefix();
        // /
        // /app/
        // /module/
        // /app/module/

        $mappingPath = '/'.substr($requestPath, strlen($moduleUri));
        // /
        // /controller/action/

        // Mapping suchen und im Request speichern
        if (($mapping=$this->module->findMapping($mappingPath)) || ($mapping=$this->module->getDefaultMapping())) {
            $request->setAttribute(ACTION_MAPPING_KEY, $mapping);
            return $mapping;
        }

        // kein Mapping gefunden
        $response->setStatus(HttpResponse::SC_NOT_FOUND);

        if (isset($this->options['status-404']) && $this->options['status-404']=='pass-through')
            return null;

        header('HTTP/1.1 404 Not Found', true, HttpResponse::SC_NOT_FOUND);

        // konfiguriertes 404-Layout suchen
        if ($forward = $this->module->findForward((string) HttpResponse::SC_NOT_FOUND)) {
            // falls vorhanden, einbinden...
            $this->processActionForward($request, $response, $forward);
        }
        else {
            // ...andererseits einfache Fehlermeldung ausgeben
            echo <<<PROCESS_MAPPING_ERROR_SC_404
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL was not found on this server.</p>
<hr>
<address>...lamented the MiniStruts.</address>
</body></html>
PROCESS_MAPPING_ERROR_SC_404;
        }
        return null;
    }
protected function processMapping(Request $request, Response $response) {
        // Pfad fuer die Mappingauswahl ermitteln ...
        $requestPath = '/'.trim(preg_replace('|/{2,}|', '/', $request->getPath()), '/').'/';   // normalize request path
        if ($requestPath=='//') $requestPath = '/';
        // /
        // /controller/action/
        // /module/
        // /module/controller/action/

        $moduleUri = $request->getApplicationBaseUri().$this->module->getPrefix();
        // /
        // /app/
        // /module/
        // /app/module/

        $mappingPath = '/'.substr($requestPath, strlen($moduleUri));
        // /
        // /controller/action/

        // Mapping suchen und im Request speichern
        if (($mapping=$this->module->findMapping($mappingPath)) || ($mapping=$this->module->getDefaultMapping())) {
            $request->setAttribute(ACTION_MAPPING_KEY, $mapping);
            return $mapping;
        }

        // kein Mapping gefunden
        $response->setStatus(HttpResponse::SC_NOT_FOUND);

        if (isset($this->options['status-404']) && $this->options['status-404']=='pass-through')
            return null;

        header('HTTP/1.1 404 Not Found', true, HttpResponse::SC_NOT_FOUND);

        // konfiguriertes 404-Layout suchen
        if ($forward = $this->module->findForward((string) HttpResponse::SC_NOT_FOUND)) {
            // falls vorhanden, einbinden...
            $this->processActionForward($request, $response, $forward);
        }
        else {
            // ...andererseits einfache Fehlermeldung ausgeben
            echo <<<PROCESS_MAPPING_ERROR_SC_404
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL was not found on this server.</p>
<hr>
<address>...lamented the MiniStruts.</address>
</body></html>
PROCESS_MAPPING_ERROR_SC_404;
        }
        return null;
    }
protected function processMapping ( Request $ request , Response $ response ) { // Pfad fuer die Mappingauswahl ermitteln ... $ requestPath = '/' . trim ( preg_replace ( '|/{2,}|' , '/' , $ request -> getPath ( ) ) , '/' ) . '/' ; // normalize request path if ( $ requestPath == '//' ) $ requestPath = '/' ; // / // /controller/action/ // /module/ // /module/controller/action/ $ moduleUri = $ request -> getApplicationBaseUri ( ) . $ this -> module -> getPrefix ( ) ; // / // /app/ // /module/ // /app/module/ $ mappingPath = '/' . substr ( $ requestPath , strlen ( $ moduleUri ) ) ; // / // /controller/action/ // Mapping suchen und im Request speichern if ( ( $ mapping = $ this -> module -> findMapping ( $ mappingPath ) ) || ( $ mapping = $ this -> module -> getDefaultMapping ( ) ) ) { $ request -> setAttribute ( ACTION_MAPPING_KEY , $ mapping ) ; return $ mapping ; } // kein Mapping gefunden $ response -> setStatus ( HttpResponse :: SC_NOT_FOUND ) ; if ( isset ( $ this -> options [ 'status-404' ] ) && $ this -> options [ 'status-404' ] == 'pass-through' ) return null ; header ( 'HTTP/1.1 404 Not Found' , true , HttpResponse :: SC_NOT_FOUND ) ; // konfiguriertes 404-Layout suchen if ( $ forward = $ this -> module -> findForward ( ( string ) HttpResponse :: SC_NOT_FOUND ) ) { // falls vorhanden, einbinden... $ this -> processActionForward ( $ request , $ response , $ forward ) ; } else { // ...andererseits einfache Fehlermeldung ausgeben echo  <<<PROCESS_MAPPING_ERROR_SC_404
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL was not found on this server.</p>
<hr>
<address>...lamented the MiniStruts.</address>
</body></html>
PROCESS_MAPPING_ERROR_SC_404 ; } return null ; }
Waehlt das zu benutzende ActionMapping. Kann kein Mapping gefunden werden, wird eine Fehlermeldung
erzeugt und NULL zurueckgegeben.

@param  Request  $request
@param  Response $response

@return ActionMapping|null - ActionMapping oder NULL
Waehlt das zu benutzende ActionMapping . Kann kein Mapping gefunden werden wird eine Fehlermeldung erzeugt und NULL zurueckgegeben .