$KK(servlet-mapping)
Das Element servlet-mapping mappt eine URL zu einem Servlet oder JSP.
$B(Bilder,servletMapping.gif,Aufbau Element servlet-mapping in web.xml)
Das Element url-pattern kann man in 4 Kategorien einteilen:
* Ein Prefix Pattern startet mit / und endet mit /*. z.B: /helloServlet/*
* Ein extension Mapping Pattern, startet mit *. z.B: *.pdf
* Das Default Servlet Pattern besteht nur aus einem /
* Alles andere sind exakte Matches
Eine URL laesst sich auch aufspalten:
$B(Bilder,url.gif,Struktur einer URL)
Beispiele:
$S()
purchase
/po/*
$S\
Ordnet die Urls dessen pathInfo mit /po/ anfaengt den Servlet purchase zu.
$S()
sales-report
/report
$S\
Beispiel fuer exaktes Matching pathInfo der URL muss /report sein.
$S()
XMLProcessor
*.xml
$S\
Eine URL mit PathInfo der mit *.xml endet wird dem Servlet XMLProcessor zugeordnet.
# Der Container untersucht die servlet-mapping Elemente der in contextPath
spezifizierten Webapplikation. Es wird nur nur der pathInfo Teil der URL untersucht.
# Zunächst wird versucht ein Pattern mit exakten Matches zu finden.
# Danach werden die url-pattern mit Präfix Pattern untersucht. Falls mehrere zutreffen, wird das
mit dem längsten Pfad genommen.
# Falls immer noch kein Servlet gefunden wurde, werden die Mappings mit Extension Mapping
Patterns untersucht.
# Besteht der pathInfo Teil der URL lediglich aus einem Slash wird das default Servlet
genommen.
# Wurde immer noch kein Servlet gefunden, behandelt ein Default Prozessor Handler die Anfrage
und es wird i.a. eine Fehlermeldung zurückgeben
$KK(welcome-file-list)
Unter welcome File versteht man eine Datei die angezeigt wird, auch wenn in der URL nur
ein Verzeichnis angegeben ist.
$B(Bilder,welcomeFile.gif,Aufbau welcome file list)
Beispiel:
$S()
index.html
index.htm
default.html
default.htm
$S\
Falls der Container mit Hilfe der servlet-mappings kein Servlet findet, versucht der
Container durch Anfügen einer Datei in der welcome-file-list an die URL eine
Ressource zu finden.