Manchmal sehe ich JSF URL ist *.jsf, manchmal *.xhtml und manchmal /faces/*. Warum?
Wurde, versuchen zu lernen, JSF, und manchmal sehe ich die URL *.jsf
und manchmal ist *.xhtml
oder /faces/*
. Kann jemand füllen mein wissen, bitte? Wenn ich ein JSF mit Passenden, die Endung der Datei ist .xhtml
so bedeutet .jsf
URL-Erweiterung kommen?
InformationsquelleAutor der Frage Thang Pham | 2010-06-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
.jsf
Erweiterung ist, wo dieFacesServlet
ist während der JSF 1.2 Zeit oft abgebildet, in derweb.xml
.Den
.xhtml
Erweiterung der tatsächlichen Facelets-Datei Sie haben physisch platziert in der webcontent Ihrer webapp, z.B.Webapp/WebContent/page.xhtml
.Rufen Sie diese Seite mit den
.jsf
Endung, z.B.http://localhost:8080/webapp/page.jsf
dann dieFacesServlet
aufgerufen wird, suchen Sie diepage.xhtml
Datei und Parsen/Rendern des JSF-Komponenten. Wenn dieFacesServlet
ist nicht aufgerufen, dann wird der enduser würde am Ende immer die raw-XHTML-Quelltext (die gesehen werden kann durch Rechtsklick, View Source).Manchmal ein
*.faces
Erweiterung oder/faces/*
foldermapping genutzt. Aber das war von hinten in den JSF 1.0/1.1 Alters. Du bist frei zu wählen und mit welchem mapping Sie möchten, lassen SieFacesServlet
hören auf, selbst wenn es ein nichts-sagen*.xyz
. Die eigentliche Seite selbst sollte immer.xhtml
- Erweiterung, aber dies ist konfigurierbar, indem Sie die folgenden<context-param>
imweb.xml
:Dies wird sich ändern, die
FacesServlet
zu suchenpage.xml
instad von (Standard -)page.xhtml
.Mehr vor kurzem mit JSF/Facelets 2.0 a
*.xhtml
mapping verwendet wurde. In JSF/Facelets-1.x war es nicht möglich, das gleiche mapping als Erweiterung der physischen Datei. Würde das Ergebnis in eine Endlosschleife. Aber da JSF/Facelets 2.0 ist es möglich, und dies ermöglicht Ihnen das aufrufen der Seite durchhttp://localhost:8080/webapp/page.xhtml
.Diese Weise brauchen Sie nicht zu konfigurieren, die für die Sicherheit Einschränkungen zu verstecken, die rohen Quelldateien Weg für die Fälle, wenn der Anwender änderungen zum Beispiel
.jsf
URL ein, um.xhtml
im browser-Adresse bar. Nur Werkzeuge (Entwicklungsumgebungen und plugins) - und Lernressourcen, die noch Nachholbedarf befürwortet die Bewegung von*.jsf
zu*.xhtml
. Als pro JSF 2.3, dieFacesServlet
werden standardmäßig automatisch registrierte auf*.xhtml
auch (neben/faces/*
*.faces
und*.jsf
). Dies ist mehr auf Mojarra 2.2.11.Siehe auch:
InformationsquelleAutor der Antwort BalusC